如何为python正则表达式添加标志?

Pet*_*man 2 python regex flags

我想在re.sub正则表达式字符串中添加一个标志.在PHP中,我会这样做' \test is good\i'

我在re.compile中试过这个,但它没有.sub方法.我试图使用s.replace,但我也不能添加i标志

Cha*_*ffy 7

编译的正则表达式对象可以传递给re.sub(),因此仍然可以在编译时传递标志.

r = re.compile('test is good', re.IGNORECASE)
re.sub(r, 'yup', 'TEST IS GOOD')
Run Code Online (Sandbox Code Playgroud)

或者,可以使用(?iLmsux)语法添加标志:

re.sub('(?i)test is good', 'yup', 'TEST IS GOOD')
Run Code Online (Sandbox Code Playgroud)

  • 您也可以使用`r.sub`,因为正则表达式对象*具有*a`sub`方法.当他说"它没有`.sub`方法"时,我不知道OP正在谈论什么. (3认同)
  • 或者另一种变体:`re.sub('test is good','yup','TEST IS GOOD',flags = re.IGNORECASE) (2认同)