Подтвердить что ты не робот

PHP preg_match (. *) Не соответствует предыдущим разрывам строки

У меня эти данные в столбце LONGTEXT (поэтому разрывы строк сохраняются):

Paragraph one
Paragraph two
Paragraph three
Paragraph four

Я пытаюсь сопоставить абзацы с 1 по 3. Я использую этот код:

preg_match('/Para(.*)three/', $row['file'], $m);

Это ничего не возвращает. Если я попытаюсь работать только в первой строке абзаца, сопоставляя:

preg_match('/Para(.*)one/', $row['file'], $m);

Затем работает код, и я возвращаю правильную строку. Что я здесь делаю неправильно?

4b9b3361

Ответ 3

Попробуйте установить регулярное выражение в пункт -все (дополнительный параметр 'в конце), поэтому он включает разрывы строк:

preg_match('/Para(.*)three/s', $row['file'], $m);

Ответ 4

Если вам не нравится / в начале и и, используйте T-Regx

$m = Pattern::of('Para(.*)three')->match($row['file'])->first();