【发布时间】:2015-09-30 08:10:01
【问题描述】:
我正在尝试制作一个 php 正则表达式来解析括号中的文本字符串,同时忽略可能的嵌套括号:
假设我想要
Lorem ipsum [1. dolor sit amet, [consectetuer adipiscing] elit.]. Aenean commodo ligula eget dolor.[2. Dolor, [consectetuer adipiscing] elit.] Aenean massa[3. Lorem ipsum] dolor.
返回
[1] => "dolor sit amet, [consectetuer adipiscing] elit."
[2] => "Dolor, [consectetuer adipiscing] elit."
[3] => "Lorem ipsum"
目前为止
'/\[([0-9]+)\.\s([^\]]+)\]/gi'
但是当出现嵌套括号时它会中断。 See demo
如何从检测中忽略内括号? 提前谢谢!
【问题讨论】:
-
因为嵌套结构,我认为regex不适合这种情况。也许一个简单的例程是更好的方法。