中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

正則表達式如何匹配單詞

發布時間:2021-12-14 17:25:37 來源:億速云 閱讀:4094 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關正則表達式如何匹配單詞的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

正則表達式匹配單詞的內幕:

元字符<<\b>>也是一種對位置進行匹配的“錨”。這種匹配是0長度匹配。有4種位置被認為是“單詞邊界”:

1)在字符串的***個字符前的位置(如果字符串的***個字符是一個“單詞字符”)

2)在字符串的***一個字符后的位置(如果字符串的***一個字符是一個“單詞字符”)

3)在一個“單詞字符”和“非單詞字符”之間,其中“非單詞字符”緊跟在“單詞字符”之后

4)在一個“非單詞字符”和“單詞字符”之間,其中“單詞字符”緊跟在“非單詞字符”后面

“單詞字符”是可以用“\w”匹配的字符,“非單詞字符”是可以用“\W”匹配的字符。在大多數的正則表達式實現中,“單詞字符”通常包括<<[a-zA-Z0-9_]>>。

例如:<<\b4\b>>能夠匹配單個的4而不是一個更大數的一部分。這個正則表達式不會匹配“44”中的4。

換種說法,幾乎可以說<<\b>>匹配一個“字母數字序列”的開始和結束的位置。

“單詞邊界”的取反集為<<\B>>,他要匹配的位置是兩個“單詞字符”之間或者兩個“非單詞字符”之間的位置。

正則表達式匹配單詞的原理探討:

◆深入正則表達式引擎內部

讓我們看看把正則表達式<<\bis\b>>應用到字符串“This island is beautiful”。引擎先處理符號<<\b>>。因為\b是0長度 ,所以***個字符T前面的位置會被考察。因為T是一個“單詞字符”,而它前面的字符是一個空字符(void),所以\b匹配了單詞邊界。接著<<i>>和***個字符“T”匹配失敗。匹配過程繼續進行,直到第五個空格符,和第四個字符“s”之間又匹配了<<\b>>。然而空格符和<<i>>不匹配。繼續向后,到了第六個字符“i”,和第五個空格字符之間匹配了<<\b>>,然后<<is>>和第六、第七個字符都匹配了。然而第八個字符和第二個“單詞邊界”不匹配,所以匹配又失敗了。到了第13個字符i,因為和前面一個空格符形成“單詞邊界”,同時<<is>>和“is”匹配。引擎接著嘗試匹配第二個<<\b>>。因為第15個空格符和“s”形成單詞邊界,所以匹配成功。引擎“急著”返回成功匹配的結果。

感謝各位的閱讀!關于“正則表達式如何匹配單詞”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

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

AI

祁门县| 岑溪市| 德令哈市| 调兵山市| 法库县| 潼南县| 新津县| 门源| 井冈山市| 达孜县| 宜州市| 平远县| 罗田县| 黎城县| 克拉玛依市| 东源县| 甘南县| 马尔康县| 广丰县| 肥东县| 洛扎县| 兰西县| 苗栗市| 敦化市| 沈阳市| 象山县| 兴宁市| 成都市| 云浮市| 万宁市| 泸定县| 旬阳县| 凤庆县| 南宁市| 沙坪坝区| 康定县| 万州区| 沭阳县| 平陆县| 青海省| 永川市|