正则表达式中转义字符后的字符串

时间:2015-01-31 16:45:37

标签: python regex

我在Python中使用正则表达式。我试图提取2个变量之间的所有数据,它以{“justin_h并以”#}结尾的特殊字符开头,但是我在使用正则表达式语法时遇到了麻烦。

我一直在使用:

[{]["][justin_h...["][}]

它没有返回任何结果。我知道它在那里,并且[{] [“]返回结果,但是当我启动字符串时它似乎不起作用。我哪里出错?

1 个答案:

答案 0 :(得分:0)

使用捕获组或外观。

r'\{"justin_h(.*?)"}'

从组索引1中获取所需的字符串。如果要抓取的部分包含换行符,则无法工作。对于这种情况,您需要使用(?s) DOTALL标志。

r'(?s)\{"justin_h(.*?)"}'

示例:

>>> re.findall(r'\{"justin_h(.*?)"}', 'foo{"justin_hfoobar"}barfoo')
['foobar']