溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java正則表達式中的常用量詞

發布時間:2020-06-06 17:07:24 來源:億速云 閱讀:345 作者:Leah 欄目:編程語言

這篇文章給大家分享的是java正則表達式中的常用量詞的介紹。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。

1概述
所謂量詞,可以理解為用來描述某個字符(字符組)重復出現的次數。舉個例子,11位數的電話號碼,如果不考慮前三位的固定組合,用正則表達式寫成:
\d\d\d\d\d\d\d\d\d\d\d
其中d重復了11次,十分不方便,所以就引入了量詞,上式可以輕松地寫成:
\d{11}
量詞也支持對長度描述范圍,形如{m,n} m和n分別是兩個整數,相當于數學中的[m,n],例如\d{1,11},表示這個數字字符串的長度最短1個字符,最長11個字符。

【注意】{m,n}的n省略寫成{m,} 表示字符出現最少m次,且沒有上限。
2 常用量詞表示
有幾種技術人員常用的量詞表示,產生出了相當于量詞的簡記策略。
java正則表達式中的常用量詞
3 點號
特殊的元字符 .(點號),點號可以匹配除了換行符n之外的所有字符,包括數字、字母各種符號等。如果需要匹配真正的所有字符的話,可以在設置單行模式匹配的情況下使用點號,或者使用第一章所講,使用 [\s\S]。

4 匹配優先量詞
正則表達式中的量詞可以分為幾種類別,之前介紹的量詞都是可以歸為匹配優先量詞,其匹配策略為:當不確定是否要匹配時,先嘗試匹配,再做后續動作。
因為有匹配優先的存在,對于通配符(除\n)點號就有可能匹配到本不該匹配到的部分(比如字符串的末尾),這時候就應該放棄本次匹配,讓表達式的后一部分嘗試匹配。這一個過程稱為回溯。

5忽略優先量詞
相反地,當不確定時候要匹配時選擇不匹配的稱為忽略優先量詞。先嘗試用表達式后面的部分匹配,不符合時再做回溯操作。
上面提到的常用量詞都是優先匹配的,它們都有忽略優先的對應量詞,見下表:
java正則表達式中的常用量詞
【注意】對于忽略優先量詞的轉義包括前后兩部分,即?的轉義為\\? ,+?的轉義為+\? ,??的轉義為\?\?
關于java正則表達式中的常用量詞就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女