如何查找html正文标签并将其替换为另一个标签

时间:2019-04-21 13:05:56

标签: javascript regex

我正在寻找一种方法来获取任何规范化html中的标签并获取它。同时,我希望将标签替换为输出字符串中的标签 到目前为止,我有以下解决方案:

var p = '<html><header>some header args</header><body style="display:none"><p>bla bla car</p></body></html>';

var regex = /<body([^>]*>)((.|[\n\r])*)<\/body>/im;

console.log(regex.exec(p)[0].replace(regex, '<div$1$2</div>'));

代码正常工作,并向我返回我想要的内容:

"<div style="display:none"><p>bla bla car</p></div>"

我使用的方法是最快捷的吗? 如您所见,我在执行Exec命令时首先尝试查找模式,然后在第二个操作中将其替换为。 有一种方法可以一次完成吗? 那比我快吗?

提前谢谢!

1 个答案:

答案 0 :(得分:-1)

这不是最佳选择,因为它永远不支持嵌套标签。

它实际上可能并不慢,但是使用正则表达式匹配巨大的字符串肯定很奇怪。

如果可能,请使用真实的html解析器库!