请教mr_merlin,再请你帮下忙,欢迎其他大虾一起帮忙解决,最后37分了 本帖最后由 edisonli 于 2012-10-16 12:56:30 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 $string = 'some text <tag:cate name="a"><div>a</div><tag:cate name="b"><div></div></tag:cate><tag:cate>c</tag:cate></tag:cate>d<tag:cate>e</tag:cate> more text';preg_match_all("/<tag:cate(.*?)>(?>(?:<\/?\w+>)|\w+|(?R))*<\/tag:cate>/",$string,$matches);print_r($matches);Array( [0] => Array ( [0] => <tag:cate name="a"><div>a</div><tag:cate name="b"><div></div></tag:cate><tag:cate>c</tag:cate></tag:cate> [1] => <tag:cate>e</tag:cate> ) [1] => Array ( [0] => name="a" [1] => ))这是你要的效果吗? $string = 'some text <tag:cate name="a"> <div>a</div> <tag:cate name="b"> <div></div> </tag:cate> <tag:cate> c</tag:cate> </tag:cate> <div>ddd </div> <tag:cate> e</tag:cate> more text';这种字符串中间有换行等特殊符号就匹配不了了 那就先替换一下><间的所有回车符号。顺便把空格过滤一下。 有个多行修饰符,好像是m还是什么来着。php.net的pcre部分有写 mysql+php数据查询、删除、update都可以操作,insert却不行啊,怪事!! php程序显示空白是什么原因,帮忙看看 数据库中数据写入到一个数组中 PHP中.htaccess Rewrite的问题 请问下google pagerank pr如何查询 如何让第二个列表的内容随着第一个列表的选择而自动变化?急用,在线! 怎么才能使上传的图片自动加上水印 有用过zend encode 的朋友请进 一个PHP文件代码的问题《急!!!!》!100分 PHP报表应该如何做?? 关于POST抓取不到数据的问题 php使用freetds访问mssql的中文字符问题
preg_match_all("/<tag:cate(.*?)>(?>(?:<\/?\w+>)|\w+|(?R))*<\/tag:cate>/",$string,$matches);
print_r($matches);Array
(
[0] => Array
(
[0] => <tag:cate name="a"><div>a</div><tag:cate name="b"><div></div></tag:cate><tag:cate>c</tag:cate></tag:cate>
[1] => <tag:cate>e</tag:cate>
) [1] => Array
(
[0] => name="a"
[1] =>
))
这是你要的效果吗?
<div>a</div>
<tag:cate name="b">
<div></div>
</tag:cate>
<tag:cate>
c</tag:cate>
</tag:cate>
<div>ddd
</div>
<tag:cate>
e</tag:cate> more text';
这种字符串中间有换行等特殊符号就匹配不了了
php.net的pcre部分有写