Регулярные выражения preg_split - PullRequest
0 голосов
/ 31 января 2019

Регулярное выражение - нужно разделить слово с помощью preg_split

----------------------- Page 1-----------------------
text of page 1


----------------------- Page 2-----------------------
text of page 2


----------------------- Page 3-----------------------
 text of page 3

Мне нужно разбить текст каждой страницы в массив.

array( [0]=> "text of page 1", [1] => "text of page 2",[2]=>"text of page 3")

Я использовал следующее регулярное выражение

((7[-])(page)( )[1-100](7[-]))

1 Ответ

0 голосов
/ 31 января 2019

Вы можете сделать что-то вроде этого, предполагая, что всегда будет один пробел до P и после e, и что между числом и - s нет пробела.

\s*-+ Page \d+-+\n
  • \s* соответствует завершающему пробелу с предыдущей страницы.
  • -+ Page \d+-+ соответствует строке --------- Page x-----------
  • \n, так что в каждом разделении нет начальных новыхлинии.

Обратите внимание, что первый элемент массива разбиения будет пустой строкой или пробелом и может быть отброшен.

Демо

...