跟在带量词的前瞻后面有什么作用?
本文介绍了跟在带量词的前瞻后面有什么作用?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我只是试着想清楚这个问题,这个问题是我在和积极的头脑打交道时突然想到的。
此正则表达式有意义吗?
foo(?=bar)+
re.match()
不返回错误,但如果+
量词有任何意义,我不知道它会是什么。(FWIW,regex101.com给出错误‘前面的令牌不可量化’)
推荐答案
这里没有理由使用+
量词。正则表达式lookahead和lookbehinds实际上并不匹配任何文本,这意味着如果它们在一个位置匹配一次,它们将连续"匹配"无限次。它似乎足够聪明,不会多次尝试匹配先行查找,因为它不会陷入无限循环。
换句话说,只要坚持使用不合格的lookahead:foo(?=bar)
就是最好的。
这篇关于跟在带量词的前瞻后面有什么作用?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!