说,我有一个类似
的字符串<body class="body-element" style="background: red;"><div class="inner">...</div></body>
我想提取body标签的所有属性。至于jQuery解析忽略body标签,我不能使用它。那么,如何使用正则表达式呢?
我只需要从body标签提取属性即可。
答案 0 :(得分:4)
使用DOMParser
,获取.body
,然后获取其.attributes
。
var s = '<body class="body-element" style="background: red;"><div>...</div></body>';
var attrs = new DOMParser().parseFromString(s, "text/html").body.attributes;
for (const a of attrs) console.log("%s = %s", a.name, a.value);
答案 1 :(得分:0)
This RegEx可以帮助您将输入的HTML字符串分为两组并获得所需的属性:
([a-z]+)="([A-Za-z0-9_\-\:\s;]+)
如有必要,您可以将其他字符添加到[A-Za-z0-9_\-\:\s;]
中。