繁体   English   中英

Javascript Regex:获取HTML标签

[英]Javascript Regex: Get HTML Tags

我做了这个正则表达式:

/\<+[a-zA-Z0-9\=\"\s]+\>+.+\<\/+[a-zA-Z0-9]+\>/gi

它匹配一个完整的HTML标签,如:

<p>this is a paragraph</p>

但是这个问题是它将所有元素匹配为一个匹配

<div><p>this is a paragraph</p></div>

但我想将所有HTML元素分开。

注意:HTML标记位于不在DOM中的字符串中。

在正则表达式解决方案之前,我尝试创建一个新的div元素,并添加了字符串,因为它是innerHTML。 但是不能正常工作我真的不知道为什么......

所以我正在寻找解决这一匹配问题的REGEX解决方案。

谢谢

+[^<]+替换内部+.+会阻止它匹配整个字符串,但正则表达式不是处理包含嵌套组件的字符串的正确选择。 为此你应该使用解析器。

正则表达式只是这里工作的错误工具。

正则表达式不适合处理html。 正如您所提到的,HTML不是DOM的一部分

注意:HTML标记位于不在DOM中的字符串中。

您可以使用JQuery从HTML构建对象,并使用DOM选择器/ traversion来处理它:

$(myHTMLString).find('p')...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM