当前位置:Gxlcms > PHP教程 > 【置顶】有木有晓得正则表达式中的嵌套匹配的语法的

【置顶】有木有晓得正则表达式中的嵌套匹配的语法的

时间:2021-07-01 10:21:17 帮助过:2人阅读

【置顶】有木有知道正则表达式中的嵌套匹配的语法的?
求大神讲解,百度搜了很多看不明白,希望大神能讲解一下语法是怎样的,谢谢了!
例如:
(a(b(d))c)(e(f(g))m).....
我想得到
(a(b(d))c) 和 (e(f(g))c) 正则表达式 嵌套匹配

分享到:


------解决方案--------------------

$str = '(a(b(d))c)(e(f(g))m)';
$reg = '#\(([^\(\)]+
------解决方案--------------------
(?R))*\)#';

$matches = array();
preg_match_all($reg, $str, $matches);

var_dump($matches);

------解决方案--------------------
引用:
Quote: 引用:


$str = '(a(b(d))c)(e(f(g))m)';
$reg = '#\(([^\(\)]+
------解决方案--------------------
(?R))*\)#';

$matches = array();
preg_match_all($reg, $str, $matches);

var_dump($matches);


能吧括号换成html标签然后讲解一下吗?

你直接贴你自己实际代码 别人好帮你实际分析
------解决方案--------------------
$str = '';
//$reg = '#\(([^\(\)]+
------解决方案--------------------
(?R))*\)#';
//匹配出id为2和id为35的div所包含的内容

$reg = '#------解决方案--------------------
35)">(<([^>\s]+)[^>]*>([<>]*
------解决方案--------------------
(?1))*?)*#';
preg_match_all($reg, $str, $matches);
echo "
";
var_dump($matches);
echo "
";

虽然可以用,但是不推荐这样用,还是用DOMDocument之类的工具获取内容比较好,毕竟他们更加擅长。

人气教程排行