国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > regex > 正文

正則表達式中最短匹配模式的用法淺析

2020-01-20 22:01:13
字體:
來源:轉載
供稿:網友

前言

最近有一次想用正則表達式從網頁里面抓取一些東西出來,內容不復雜卻出現不少問題。下面話不多說,來一起看看詳細的介紹:

當我們用正則表達式去匹配一個標簽的首尾的時候,比如匹配 <h1>hello world</h1> 中的 h1 的開始和閉合標簽

可能很多人會這樣寫

/<.*h1>/g

但是這樣真的可以嗎?

因為 * 匹配符是匹配前面一個字符的零到多個,而且它是貪婪匹配的

所以你得到的就會是下面的結果了。


顯然這并不是我們想要的,那么怎么把貪婪匹配換成最小匹配呢,

/<.*?h1>/g

上面的寫法就可以了,如下圖:


其實原理應該很簡單,因為 ? 也是貪婪匹配,并且只能匹配0到1個,

所以它會匹配到第一個的時候就結束了,從而阻止了 * 的匹配多個的貪婪。

PS:這里再為大家提供2款非常方便的正則表達式工具供大家參考使用:

JavaScript正則表達式在線測試工具:http://tools.VeVB.COm/regex/javascript

正則表達式在線生成工具:http://tools.VeVB.COm/regex/create_reg

更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《JavaScript正則表達式技巧大全》、《JavaScript替換操作技巧總結》、《JavaScript查找算法技巧總結》、《JavaScript數據結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》、《JavaScript中json操作技巧總結》、《JavaScript錯誤與調試技巧總結》及《JavaScript數學運算用法總結

總結

以上就是這篇文章的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對武林網的支持。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 岫岩| 红桥区| 湛江市| 寻乌县| 临猗县| 山东| 安陆市| 景洪市| 长宁县| 大埔县| 达拉特旗| 西吉县| 无极县| 西丰县| 莱芜市| 海安县| 法库县| 海淀区| 图们市| 南汇区| 丰镇市| 班戈县| 新泰市| 千阳县| 苏尼特右旗| 凭祥市| 台前县| 吉木萨尔县| 白朗县| 大理市| 富蕴县| 阳曲县| 安泽县| 汾阳市| 甘洛县| 隆德县| 肃北| 逊克县| 江北区| 南涧| 神池县|