我在Python中使用正则表达式。我试图提取2个变量之间的所有数据,它以{“justin_h并以”#}结尾的特殊字符开头,但是我在使用正则表达式语法时遇到了麻烦。
我一直在使用:
[{]["][justin_h...["][}]
它没有返回任何结果。我知道它在那里,并且[{] [“]返回结果,但是当我启动字符串时它似乎不起作用。我哪里出错?
答案 0 :(得分:0)
使用捕获组或外观。
r'\{"justin_h(.*?)"}'
从组索引1中获取所需的字符串。如果要抓取的部分包含换行符,则无法工作。对于这种情况,您需要使用(?s)
DOTALL标志。
r'(?s)\{"justin_h(.*?)"}'
示例:
>>> re.findall(r'\{"justin_h(.*?)"}', 'foo{"justin_hfoobar"}barfoo')
['foobar']