'(?='和')'在这里做什么?

时间:2019-07-16 18:28:44

标签: python regex

这里的代码是找出子字符串的数量。 我尝试了其他方法,但使用此行代码更短,工作原理相同。

new_doc_topic_distr

这可能会提供一些上下文。

count=len(re.findall('(?='+sub_string+')', string))

2 个答案:

答案 0 :(得分:1)

'?='是积极的前瞻性断言的一部分。您正在捕获的匹配项最多包括但不包括sub_string。

出于您的目的,这可能更简洁。

count = len(re.findall(sub_string, string))

可以在这里找到有关正则表达式断言的更详尽说明。 https://www.regular-expressions.info/lookaround.html

答案 1 :(得分:0)

此代码使用regular expression?=positive lookahead的文字。它告诉正则表达式过程也搜索上一个匹配项。

Example 1Example 2-您可以看到正面正向(1)和不正面(2)的区别。

相关问题