re.sub 有异常或条件

re.sub with exception or condition

我想使用 re.sub 代替所有带括号的单词而不是单词 (k),我想使用一些否定条件,但它似乎不适用于我的示例。

我试过了

 \((?<!k)\w+\)

有什么建议吗?

re.sub(r'\((?<!k)\w+\)', '', '(k) i am, us dep economy (applause) (ph)', flags= re.IGNORECASE)      

期望的结果是

(k) i am, us dep economy

使用负前瞻:

\((?!k\))\w+\)
  • (?!k\) 确保 k) 不会出现在初始 (
  • 之后

所以:

In [75]: re.sub(r'\((?!k\))\w+\)', '', '(k) i am, us dep economy (applause) (ph)', flags= re.IGNORECASE)
Out[75]: '(k) i am, us dep economy  '