【发布时间】:2013-10-01 12:07:09
【问题描述】:
我正在尝试在 Python 中学习一些正则表达式。以下不会产生我预期的输出:
with open('ex06-11.html') as f:
a = re.findall("<div[^>]*id\\s*=\\s*([\"\'])header\\1[^>]*>(.*?)</div>", f.read())
# output: [('"', 'Some random text')]
我期待的输出(相同的代码,但没有反向引用):
with open('ex06-11.html') as f:
print re.findall("<div[^>]*id\\s*=\\s*[\"\']header[\"\'][^>]*>(.*?)</div>", f.read())
# output: ['Some random text']
问题真的归结为:为什么我的第一个输出中有引号,而第二个输出没有?我以为([abc]) ... //1 == [abc] ... [abc]。我错了吗?
【问题讨论】:
标签: python html regex python-2.7 backreference