Regex 正则表达式和嵌套模式:what';答案是什么?
这表明:Regex 正则表达式和嵌套模式:what';答案是什么?,regex,Regex,这表明: 可以使用正则表达式匹配嵌套模式 这是不可能的,因为嵌套模式不是常规语言和 因此,DFA(正则表达式是)无法识别它们 在阅读上述问题的答案()之前,我总是站在2一边。但现在我不太确定 Can'/(\((?>[^()]+|(?1))*\)/' 真的匹配嵌套模式吗 我在vim(和JavaScript)中尝试了上面的方法,但没有成功。尽管它可能需要转换成不同的语法。引用它的答案有9票。你必须区分三件事: 具有处理嵌套事物功能的正则表达式的实现 没有这些特性的正则表达式的实现 理论意义上的“正则
'/(\((?>[^()]+|(?1))*\)/'
真的匹配嵌套模式吗
我在vim(和JavaScript)中尝试了上面的方法,但没有成功。尽管它可能需要转换成不同的语法。引用它的答案有9票。你必须区分三件事:
- 引用捕获组的子模式的功能,例如:
(\(((?>[^()])+(?)*\)
(?1)
指捕获组1(在其内部以获得递归)
此功能在PCRE正则表达式引擎(PHP,R,)中可用,在Ruby(带有oniguruma语法)中可用,在Perl中可用,在Python的新正则表达式模块、用于javascript的XRegExp库、libboost
- 堆栈系统,如.net中的:
(?:[^()]|(?[(])|(?[)))*(?(打开)(?!)