正则表达式解析html以显示某些id标签

时间:2019-02-26 14:44:24

标签: javascript html regex

我有一个需要解析的html,只需要显示正在查询的ID。

示例:

<!DOCTYPE html>
<html>
<body>

<h1>My First Heading</h1>
<h2 id="onlythisneedstobereturned"> hello </h2>
<p>My first paragraph.</p>

</body>
</html>

因此,如果我将id设置为“ onlythisneedstobereturned”,则应仅返回hello。

我有一个正则表达式,可根据标签而不是ID提取所有内容。 这是我的正则表达式

**myHtml.match("<h2(.|\n)*?<\/h2>")**

但是我不确定如何使用特定的ID标签进行正则表达式匹配。

1 个答案:

答案 0 :(得分:0)

您在这里不需要正则表达式,请像这样使用DOMParser

const htmlStr = `<!DOCTYPE html>
<html>
<body>

<h1>My First Heading</h1>
<h2 id="onlythisneedstobereturned"> hello </h2>
<p>My first paragraph.</p>

</body>
</html>`;

const parser = new DOMParser();
const doc = parser.parseFromString(htmlStr, "application/xml");

const content = doc.querySelector('#onlythisneedstobereturned').innerHTML;

console.log(content);