[英]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.