正則表達式捕獲帶有屬性的標簽


捕獲帶有屬性的標簽。

var html = '<b class="hello">Hello</b><i>world</i>'; var tag = /<(\w+)([^>]*)>(.*?)<\/\1>/g;
< 第一部分b 空格 第二部分class > 第三部分Hello 第四部分代表第一部分b g為全局匹配如果你不帶g,在正則過程中,字符串是從左至右匹配的,如果匹配成功就不再繼續向右匹配了,如果你帶g,它會重頭到尾的把正確匹配的字符串挑選出來 var match = tag.exec(html); match[1] // "b" match[2] // " class="hello"" match[3] // "Hello" match = tag.exec(html); match[1] // "i" match[2] // "" match[3] // "world"




正則表達式(.*?)惰性匹配(終於TM的搞懂了)

沒什么可說的看這兒就行了,,特別是最后一條。

1、. 匹配任意除換行符“\n”外的字符;
2、*表示匹配前一個字符0次或無限次;
3、+或*后跟?表示非貪婪匹配,即盡可能少的匹配,如*?重復任意次,但盡可能少重復;
4、 .*? 表示匹配任意數量的重復,但是在能使整個匹配成功的前提下使用最少的重復。
如:a.*?b匹配最短的,以a開始,以b結束的字符串。如果把它應用於aabab的話,它會匹配aab和ab。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM