如何正则标签id和内容?
<span id="aa">123</span>
<span class="bc">0000.</span>
<span id="bc">456.</span>
<span id="de">789..</span>
<span id="fg">aaaa..</span>
var regc = /<span id=\"([a-z])\">(.+)<\/span>/;
这里却只匹配出 id 属性期望能匹配出带 id 的标签内容与 id 名
[id名,标签内容]
回复
1个回答
test
2024-07-02
var regc = /<span id="([a-z]+)">([^<]+)<\/span>/g;
var str = `
<span id="aa">123</span>
<span class="bc">0000.</span>
<span id="bc">456.</span>
<span id="de">789..</span>
<span id="fg">aaaa..</span>
`;
var match;
while ((match = regc.exec(str)) !== null) {
console.log([match[1], match[2]]);
}
// 或者
for (const match of str.matchAll(regc)) {
console.log([match[1], match[2]]);
}
回复
适合作为回答的
- 经过验证的有效解决办法
- 自己的经验指引,对解决问题有帮助
- 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
- 询问内容细节或回复楼层
- 与题目无关的内容
- “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容