在Python正则表达式中匹配\ [\]

克劳斯

我正在尝试替换表格的所有表达式

\[something\]

在一个字符串中

\[<img src='something'>\]

由于\[ ]有特殊字符,我需要他们ESPACE(所以\\\[\]),因此我的代码会

def repl(m):
    return "<img src='"+m.group(1)+"'>"

print re.sub("\\\[(.*?)\\\]", repl, "frfrfr\nfrrffr<p>\[something\]</p>frff\nfrfrr", re.S)

但是,这将返回原始字符串。有人可以指出我的错误吗?

虚假的

\正确逃脱,或r'raw string'按以下说明使用

>>> print re.sub(r"\\\[(.*?)\\\]", repl, "frfrfr\nfrrffr<p>\[something\]</p>frff\nfrfrr", flags=re.S)
frfrfr
frrffr<p><img src='something'></p>frff
frfrr

>>> print re.sub("\\\\\\[(.*?)\\\\\\]", repl, "frfrfr\nfrrffr<p>\[something\]</p>frff\nfrfrr", flags=re.S)
frfrfr
frrffr<p><img src='something'></p>frff
frfrr

更新

的第四个参数re.subcount,不是flags要指定标志,请使用关键字参数。否则,re.S被识别为count

>>> print re.sub(r"\\\[(.*?)\\\]", repl, "frfrfr\nfrrffr<p>\[something\nblah\]</p>frff\nfrfrr", re.S)
frfrfr
frrffr<p>\[something
blah\]</p>frff
frfrr
>>> print re.sub(r"\\\[(.*?)\\\]", repl, "frfrfr\nfrrffr<p>\[something\nblah\]</p>frff\nfrfrr", flags=re.S)
frfrfr
frrffr<p><img src='something
blah'></p>frff
frfrr

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

正则表达式的正则表达式在Python中不匹配

来自分类Dev

Python中的正则表达式无法正确匹配

来自分类Dev

正则表达式在python中匹配并替换

来自分类Dev

在python中匹配正则表达式

来自分类Dev

Python中的正则表达式-多行匹配

来自分类Dev

正则表达式用于Python中的匹配括号

来自分类Dev

在Python中搜索/匹配正则表达式

来自分类Dev

使用正则表达式匹配Python中的单词

来自分类Dev

Python中的正则表达式匹配问题

来自分类Dev

python中的复杂正则表达式匹配

来自分类Dev

python中的正则表达式与单词不匹配

来自分类Dev

HTML文件中的Python正则表达式匹配

来自分类Dev

python中的正则表达式以匹配Twitter句柄

来自分类Dev

正则表达式模式无法在python中匹配

来自分类Dev

在Python正则表达式中匹配\ [\]

来自分类Dev

在python中匹配正则表达式

来自分类Dev

python中的正则表达式匹配

来自分类Dev

Python中的正则表达式无法正确匹配

来自分类Dev

python中的复杂正则表达式匹配

来自分类Dev

Python中的正则表达式匹配问题

来自分类Dev

匹配python pandas元组中的正则表达式

来自分类Dev

在 Python 中匹配多行正则表达式模式

来自分类Dev

Python正则表达式匹配

来自分类Dev

在python正则表达式中匹配复杂的表达式

来自分类Dev

在表达式中是否可选地与Python正则表达式匹配?

来自分类Dev

python中的正则表达式以匹配逻辑表达式

来自分类Dev

正则表达式子方法不会替换python正则表达式中的所有匹配项

来自分类Dev

python中的正则表达式

来自分类Dev

python中的正则表达式