Python中的可变宽度后向问题
发布于 2021-01-29 18:14:39
我有以下几种情况:
1) car on the right shoulder
2) car on the left shoulder
3) car on the shoulder
我想在不存在left | right时匹配“肩膀”。所以只有3)返回“肩膀”
re.compile(r'(?<!right|right\s*)shoulder')
sre_constants.error: look-behind requires fixed-width pattern
看来我不能使用\ s *和“ |”
我该如何解决。
提前致谢!
关注者
0
被浏览
48
1 个回答
-
regex
模块:可变宽度后向除了HamZa的答案之外,对于Python中任何复杂的正则表达式,我建议使用
regex
Matthew
Barnett出色的模块。它支持无限查找-与.NET和JGSoft一起使用的无限引擎之一。这使您可以执行以下操作:
import regex if regex.search("(?<!right |left )shoulder", "left shoulder"): print("It matches!") else: print("Nah... No match.")
\s+
如果您愿意,也可以使用。输出:
It matches!