多行正则表达式匹配python



下面是我的多行字符串

sample='''
blah
blah
blah
blah
text.get(
'hi'
'you're
'welcome'
)
text.get(
'hi'
'i'm
'here'
> )
blah
blah
blah

我想根据符号>进行匹配,并在括号

中获得相关文本。
text.get(
'hi'
'i'm
'here'
> )

我试过这个代码text(.+)((.*?)>(.*?))和它匹配text.get的两个实例。有人能帮我一下吗

你可以使用

btext.w+([^()]*n> )

参见regex演示。细节:

  • b- a字边界
  • text.-text.子字符串
  • w+(-一个或多个字字符,然后一个左括号
  • [^()]*- 0个或多个字符(括号除外)
  • n> )-一个换行符、空格和右括号。

如果您需要捕获匹配的未知部分,请添加组,例如

btext.(w+)(([^()]*)n> )

在Python中,不要忘记使用原始字符串文字:r'...'.

最新更新