Как получить историю захватовPhp

Кемеровские программисты php общаются здесь
Ответить
Гость
 Как получить историю захватов

Сообщение Гость »


Насколько я могу судить, это не только проблема PHP, я спрашиваю здесь о PHP (на самом деле PHP7).

Рассмотрим такое простое регулярное выражение (если это неясно — это пример):

/((\w+): (\d+))+/ и текст к нему:

foo: 2008bar: 2009 Совпадение распространяется на весь текст, проблема в том, что фрагменты используются и забываются, как только механизм регулярных выражений перемещается по тексту. В результате вы получите только последние снимки.

Я хотел бы получить все действительные (правильные) снимки, всю историю, а не только последние снимки.

Вот код для проверки:

И вот результат

Массив ( [0] => Массив ( [0] => foo: 2008бар: 2009 ) [1] => Массив ( [0] => бар: 2009 г. ) [2] => Массив ( [0] => бар ) [3] => Массив ( [0] => 2009 г. ) ) Как видите, был сопоставлен весь текст, но для снимков были сохранены только последние. Их не хватает:

foo: 2008 фу 2008 год Поэтому мой вопрос: как получить всю «историю» захватов?
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»