我创建了一个RegEx模式来查找令牌,re.compile
但出现错误。
error("look-behind requires fixed-width pattern")
我的模式是:(?<=[\s,]|^)(?:\[.*\]|[A-Za-z]+|[0-9a-fA-F]+)(?=[\s,]|$)
错误来自,(?<=[\s,]|^)
并且可能来自|^
。但是我在regex101.com上尝试过,并且可以正常工作。我的(?=[\s,]|$)
作品(?<=[\s,]|^)
几乎是一样的,所以我真的不明白有什么不好的地方。
我使用python 3. +并重新编译lib。
向后看(?<=)
和向前看(?=)
是不一样的,向后看不能有量词,+*?
因为它们需要固定大小(您的错误消息)。但是您的变更应该照原样工作。
这种情况的解决方法是像这样交替使用lookbehinds:(?:(?<=[\s,])|(?<=^))
使得每个lookbehind都具有自己的大小。
我怀疑有一个验证规则,它以char(\s
或,
)与non char^
开头的行作斗争,即使在正确的情况下也不允许在后面的内部交替显示。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句