preg_match_all вопрос о количестве - PullRequest
       4

preg_match_all вопрос о количестве

0 голосов
/ 22 сентября 2011

У меня есть эта строка:

preg_match_all("/<data_[0-9]>(.*?)<\/data_[0-9]>/",$xml_report,$xml);

и по какой-то причине он берет мне только 10 первых строк от 0 до 9, но он не взял 10+ строк ..

что мне нужно для изменения [0-9]?

Ответы [ 3 ]

2 голосов
/ 22 сентября 2011

[0-9] выбирает только одно вхождение чисел 0-9. Используйте [0-9]+

+ означает один или несколько предшествующих элементов против * или ., что равно нулю или более.

1 голос
/ 22 сентября 2011

если вы добавите + (плюс) после ], оно будет найдено несколько раз

preg_match_all("/<data_[0-9]+>(.*?)<\/data_[0-9]+>/",$xml_report,$xml);
0 голосов
/ 22 сентября 2011

Вы проверяете только один случай числа, попробуйте это:

preg_match_all("/<data_[0-9]+>(.*?)<\/data_[0-9]+>/",$xml_report,$xml);
...