我有正则表达式re.sub(r"(?<!\s)\}", r' }', string)
。 (?<!…)
序列表示什么?
答案 0 :(得分:10)
在您提供的正则表达式中,它比<
符号多一点。
实际上有一个'负面观察':(?<! )
正在说“这之前是什么......”。在你的情况下,它正在寻找}
,条件是前面的内容不是\s
- 空格(制表符,空格......)
答案 1 :(得分:4)
它是一个回顾。请参阅此处的说明:http://www.rexegg.com/regex-disambiguation.html#negative-lookbehind
引自来源:
匹配后负面反对:
\d{3}(?<!USD\d{3})
说明:\d{3}
匹配 100 ,然后负面的lookbehind(?<!USD\d{3})
断言在字符串中的那个位置,紧接在前面的不是字符“ USD “然后三位数。