preg_match_all有关数字的问题

时间:2011-09-22 14:34:31

标签: php preg-match-all

我有这一行:

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

由于某种原因,他只带了10个第一行0到9但他没有采取10+行..

我需要更改[0-9]?

3 个答案:

答案 0 :(得分:2)

[0-9]仅选择一个数字0-9。使用[0-9]+

+表示前面的元素vs *.中的一个或多个,它们为零或更多。

答案 1 :(得分:1)

如果您在+之后附加](加号),它会发现多次出现

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

答案 2 :(得分:0)

您只检查一次出现的号码,试试这个:

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