【发布时间】:2013-10-27 15:56:16
【问题描述】:
这是我的 html 代码的一部分:
<link rel ="stylesheet" type="text/css" href="catalog/view/theme/default/stylesheet/stylesheet.css" />
<link id='all-css-0' href='http://1' type='text/css' media='all' rel='stylesheet' />
<link rel='stylesheet' id='all-css-1' href = 'http://2' type='text/css' media='all' />
我必须找到样式表的所有href。
我尝试使用像
这样的正则表达式 <link\s+rel\s*=\s*["']stylesheet["']\s*href\s*=\s*["'](.*?)["'][^>]*?>
完整代码是
body = '''<link rel ="stylesheet" type="text/css" href="catalog/view/theme/default/stylesheet/stylesheet.css" />
<link id='all-css-0' href='http://1' type='text/css' media='all' rel='stylesheet' />
<link rel='stylesheet' id='all-css-1' href = 'http://2' type='text/css' media='all' />''''
real_viraz = '''<link\s+rel\s*=\s*["']stylesheet["']\s*href\s*=\s*["'](.*?)["'][^>]*?>'''
r = re.findall(real_viraz, body, re.I|re.DOTALL)
print r
但问题是 rel='stylesheet' 和 href='' 在<link ...> 中可以是任意顺序,几乎可以是它们之间的所有内容.
请帮我找到正确的正则表达式。谢谢。
【问题讨论】:
-
我猜有人会在这里粘贴一个非常有名的链接...
标签: python regex stylesheet