我怎样才能只获得 html 的标签?

How can I get only tags of html?

如何使用 NodeJS 仅获取 HTML 标签?

我有这个:

<html>
<head>
Hi
</head>
<body>
<center id="fantastic">
Hi , hello
</center>
</body>
</html>

我想删除 Hi 和 Hi , Hello 并只获取标签,我也想删除 id="fantastic"。 任何的想法?任何正则表达式?

您可以尝试使用像 cheerio - https://github.com/cheeriojs/cheerio

这样的库

假设您在 Javascript 字符串中有来源 HTML 并且它是合法的 HTML 并且 HTML 属性不包含“>”或“ <" 字符,这应该有效:

var source = "your html here";

var result = source.match(/<.*?>/g).map(function(item) {
    return item.replace(/<\s+/, "<").replace(/\s.*?(\/?>)$/, "");
}).join("");

工作演示:http://jsfiddle.net/jfriend00/6q0gyugd/

这使用正则表达式将 HTML 标签隔离到一个数组中,然后使用 .map() 遍历该数组以删除标签中的任何前导空格,然后从中删除任何属性每个标签,然后将它们连接回 HTML.

的字符串

为了使任何可能的合法 HTML 成为最强大的,您也可以使用实际的 HTML 解析器(它可能比任何正则表达式都更智能)来解析实际的HTML 个标签,然后遍历已解析的树以仅输出标签。