递归正则表达式

时间:2019-04-17 19:58:20

标签: regex

如果有一个像${placeholder1.${placeholder2}}这样的文本,是否可以有一个正则表达式来像${placeholder1.${placeholder2}} ${placeholder2}那样递归地匹配文本

1 个答案:

答案 0 :(得分:2)

否,不使用标准正则表达式。这就是为什么强烈建议不要使用正则表达式来解析HTML的原因。 Perl,PCRE和Ruby支持扩展形式,该形式将指示正则表达式返回模式的开头并重新评估匹配。有关更多信息,请参见Regular Expression Recursion

在一般情况下,我会使用PegJS之类的库编写一个快速解析器来处理此用例。