我正在尝试清理这个正则表达式捕获组,因为它正确地捕获了我,preg_match_all
对我来说很奇怪,因为它是第一次使用{ {1}}
测试代码:: http://ideone.com/7NnrI1
正则表达式
preg_match_all
返回
/(?=<!--\sBEGIN\s(.*?)\s-->(.*?)(?=<!--\sEND\s(.*?)\s-->))/s
预期回报
Array
(
[0] => Array
(
[0] => Array
(
[0] =>
[1] => 0
)
[1] => Array
(
[0] =>
[1] => 326
)
)
[1] => Array
(
[0] => Array
(
[0] => switch_legend
[1] => 11
)
[1] => Array
(
[0] => switch_default
[1] => 337
)
)
[2] => Array
(
[0] => Array
(
[0] =>
<ul id="picture_legend">
<li><img src="{FORUM_NEW_IMG}" alt="{L_NEW_POSTS}" />{L_NEW_POSTS}</li>
<li><img src="{FORUM_IMG}" alt="{L_NO_NEW_POSTS}" />{L_NO_NEW_POSTS}</li>
<li><img src="{FORUM_LOCKED_IMG}" alt="{L_LOCKED}" />{L_LOCKED}</li>
</ul>
[1] => 28
)
[1] => Array
(
[0] =>
<ul id="picture_legend">
<li><img src="{FORUM_NEW_IMG}" alt="{L_NEW_POSTS}" />{L_NEW_POSTS}</li>
<li><img src="{FORUM_IMG}" alt="{L_NO_NEW_POSTS}" />{L_NO_NEW_POSTS}</li>
<li><img src="{FORUM_LOCKED_IMG}" alt="{L_LOCKED}" />{L_LOCKED}</li>
</ul>
[1] => 355
)
)
[3] => Array
(
[0] => Array
(
[0] => switch_legend
[1] => 308
)
[1] => Array
(
[0] => switch_default
[1] => 635
)
)
)
我需要什么
我希望数组从匹配中清除,因此不是每个相同模式的捕获都在同一个数组中,而是每次开始捕获它时都会像{{{{{{{ 1}}谢谢。
答案 0 :(得分:0)
听起来像PREG_SET_ORDER
就是你想要的。 - 马里奥