gpt4 book ai didi

regex - Python 正则表达式错误 : look-behind requires fixed-width pattern

转载 作者:行者123 更新时间:2023-12-02 08:00:09 27 4
gpt4 key购买 nike

以下正则表达式应该匹配任何 :text:前面是 start-of-string , whitespace: ,并通过 end-of-string 成功, whitespace: (还有一些额外的规则)

我不擅长正则表达式,但我在 regexr.com 中提出了所需的解决方案:

(?<=\s|:|^)(:[^\s|:]+:)(?=\s|:|$)

:match1::match2: :match3:
:match4:
000:matchNot:
:matchNot:000
:match Not:

结果: :match1: , :match2: , :match3: , :match4:
但是在 Python 3 上,这会引发错误。

re.search("(?<=\s|:|^)(:[^\s|:]+:)(?=\s|:|$)", txt)

re.error: 后视需要固定宽度的模式

任何人都知道解决此问题的好方法?任何提示表示赞赏。

最佳答案

在 python 中,您可以使用此解决方法来避免此错误:

(?:^|(?<=[\s:]))(:[^\s:]+:)(?=[\s:]|$)

anchor ^$无论如何都是零宽度匹配器。

RegEx Demo

关于regex - Python 正则表达式错误 : look-behind requires fixed-width pattern,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58310184/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com