我正在尝试匹配以下项目中的字母数字值或字符串:
IMDB(["tt3107288"])
现在我试图逃避(
和[
,但我对如何使用此"
逃脱感到遗憾:
'IMDB\(\[([^]]+)\]'
这会使用引号报告值"tt3107288"
...我知道我可以只替换引号,但只是为了匹配值会更有效。
答案 0 :(得分:0)
执行:
"([^"]+)"
现在唯一捕获的组将是您想要的部分。
示例:强>
In [2]: s = 'IMDB(["tt3107288"])'
In [3]: re.search(r'"([^"]+)"', s).group(1)
Out[3]: 'tt3107288'
答案 1 :(得分:0)
括号和括号在正则表达式中具有特殊含义,因此您必须将它们转义。此外,您的表达式具有不平衡的括号。
>>> import re
>>> re.search(r'IMDB\(\["([^"]+)"\]\)', 'IMDB(["tt3107288"])').group(1)
'tt3107288'