我正在尝试提取锚标记(<a>)的属性.到目前为止,我有这样的表达:
(?<name>\b\w+\b)\s*=\s*("(?<value>[^"]*)"|'(?<value>[^']*)'|(?<value>[^"'<> \s]+)\s*)+
Run Code Online (Sandbox Code Playgroud)
适用于字符串之类的
<a href="test.html" class="xyz">
Run Code Online (Sandbox Code Playgroud)
和(单引号)
<a href='test.html' class="xyz">
Run Code Online (Sandbox Code Playgroud)
但不是没有引号的字符串:
<a href=test.html class=xyz>
Run Code Online (Sandbox Code Playgroud)
如何修改我的正则表达式使其适用于没有引号的属性?或者有更好的方法吗?
谢谢!
更新: 感谢您提供的所有好评和建议.有一件事我没有提到:遗憾的是我必须修补/修改我自己编写的代码.没有时间/金钱可以自下而上重写这些东西.
如何迭代Beautiful Soup元素的HTML属性?
喜欢,给定:
<foo bar="asdf" blah="123">xyz</foo>
Run Code Online (Sandbox Code Playgroud)
我想要"酒吧"和"等等".