【发布时间】:2015-10-22 19:28:57
【问题描述】:
在 PHP 中,我试图完成一个简单的任务,即使用 preg_match_all 从字符串中提取一些信息
我有一个这样的字符串,例如0(a)1(b)2(c)3(d)4(e)5(f)
我正在尝试返回每个 () 内部的所有内容,但尊重其中可能存在转义括号的事实。
我尝试了多种组合,但我无法获得任何正则表达式来允许类似 4(here are some escaped parens\(\) more text) 的东西返回这个 here are some escaped parens\(\) more text 而不是这个 here are some escaped parens\(\)
我有一个有效的正则表达式,但不能使用转义括号
[0-9]*\(([^ESCAPED PARENTHESIS])*?\)
有人可以告诉我如何做到这一点吗?
【问题讨论】:
-
你需要寻找
/\\\(/。前两个反斜杠将解析为单个文字反斜杠,\(将成为常规括号,不捕获任何内容。