我正在阅读不同的regexps引擎here,并且有两种类型的引擎:regex-directed和text-directed。 JavaScript使用什么引擎类型?我认为它是regex-directed
,但我想肯定地知道。
答案 0 :(得分:2)
在您提供的链接中,据说正则表达式引擎只能处理反向引用,因为JavaScript正则表达式具有此功能,我说它是正则表达式。
摘自文章:
几乎所有现代正则表达式都基于正则表达式引擎。这是因为某些非常有用的功能,例如延迟量词和反向引用,只能在正则表达式引擎中实现。
答案 1 :(得分:0)
您可以通过将正则表达式«regex | regex not»应用于字符串“ regex not”来进行测试。如果结果匹配仅是“ regex”,则将引擎定向为正则表达式。如果结果是“ regex not”,则它是文本定向的。其背后的原因是正则表达式控制的引擎“渴望”。
来自Jan Goyvaerts book的启发式方法。
适用于Python 3.7 re
库。