【发布时间】:2010-09-03 19:23:43
【问题描述】:
我的源字符串是这样的:
{categories group_id="3"}
{category_name}
{/categories}
{categories group_id="4"}
{category_name}
{/categories}
我的正则表达式是这样的:
preg_match('/{categories group_id="3"}(.*){\/categories}/s', $tagdata, $matches);
结果:
Array
(
[0] => Array
(
[0] => {categories group_id="3"}
{category_name}
{/categories}
{categories group_id="4"}
{category_name}
{/categories}
)
[1] => Array
(
[0] =>
{category_name}
{/categories}
{categories group_id="4"}
{category_name}
)
)
可以看出贪心太贪心了,一直到二审结束。我期待的是:
Array
(
[0] => Array
(
[0] => {categories group_id="3"}
{category_name}
{/categories}
)
[1] => Array
(
[0] =>
{category_name}
)
)
【问题讨论】:
标签: php regex preg-match-all regex-greedy