正規表示式 \b元字元
\b元字元可以匹配字元的邊界,也就是它匹配的是一個位置,而不是一個真正的字元。
此位置一側是字元,另一側是非字元或者字串邊界(開始或者結束位置)。
關於元字元概念可以參閱正規表示式元字元與普通字元一章節。
正規表示式還有其他可以匹配邊界的元字元,例如:
(1).^元字元,具體參閱正規表示式 ^元字元一章節。
(2).$元字元,具體參閱正規表示式 $元字元一章節。
^元字元匹配字串的起始位置,$元字元匹配字串的結尾位置,而\b匹配的卻是字元的邊界位置。
但是需要特別注意的是,\b視角下的字元與^和$視角下的字元是構成是不同的,^和$視角下的字元就是我們普通意義上亂七八糟的東西都可以,但是\b視角下的字元就比較侷限,後面會有介紹。
語法結構:
[JavaScript] 純文字檢視 複製程式碼new RegExp("\\b")
使用建構函式方式建立正規表示式物件。
[JavaScript] 純文字檢視 複製程式碼/\b/
使用直接量方式建立。
更多建立正規表示式內容參閱JavaScript建立正規表示式一章節。
瀏覽器支援:
(1).IE瀏覽器支援此元字元。
(2).火狐瀏覽器支援此元字元。
(3).火狐瀏覽器支援此元字元。
(4).谷歌瀏覽器支援此元字元。
(5).opera瀏覽器支援此元字元。
(6).safria瀏覽器支援此元字元。
一."字元"的構成:
\b可以匹配字元的邊界,那麼就需要界定一下,在此上下文中"字元"的構成。
通常情況下,正則中"字元"就是\w可以匹配的字元,於是明晰\w的匹配範圍是關鍵。
在支援ASCII碼的語言中,\w與[a-zA-Z0-9_]等同,JavaScript正是如此。
其他程式語言會有所不同,但本文是JavaScript相關的正則知識,其他語言的不同點不做介紹。
二.程式碼例項:
[JavaScript] 純文字檢視 複製程式碼執行程式碼let str="ab<"; let reg=/\w/g; console.log(str.match(reg));
程式碼執行效果截圖如下:
由此可見"<"並不屬於所謂的"字元"。
[JavaScript] 純文字檢視 複製程式碼執行程式碼let str="antzone"; let reg=/antzon(\b)/; console.log(str.match(reg));
程式碼執行效果截圖如下:
正則匹配失敗,原因很明顯,"n"字元後面並不是它邊界。
[JavaScript] 純文字檢視 複製程式碼執行程式碼let str="antzon<"; let reg=/antzon(\b)/; console.log(str.match(reg));
程式碼執行效果截圖如下:
正則匹配成功,因為"<"不在[a-zA-Z0-9_]範圍之內,那麼"n"的右側是它的邊界。
[JavaScript] 純文字檢視 複製程式碼執行程式碼let str="I love you"; let reg=/love(\b)/g; console.log(str.match(reg));
程式碼執行效果截圖如下:
上述程式碼正則匹配成功,因為"e"的右側是空白內容,不在[a-zA-Z0-9_]範圍之內。
那麼可以認為"e"的右側是它的邊界。
[JavaScript] 純文字檢視 複製程式碼執行程式碼let str="螞蟻部落>"; let reg=/螞蟻部落(\b)/; console.log(str.match(reg));
程式碼執行效果截圖如下:
上述程式碼中,\b匹配的位置的右側確實是非字元,但是它的左側同樣也是非字元。
所以正規表示式匹配失敗。
[JavaScript] 純文字檢視 複製程式碼執行程式碼let str="I love you"; let reg=/love$/g; console.log(str.match(reg));
程式碼執行效果截圖如下:
上述正規表示式匹配失敗。
雖然"e"的右側是字元的邊界,也是單詞love的結尾,但是它不是整個字串的結尾。
對於^元字元也是如此,這裡不舉例子了。
相關文章
- 正規表示式 \B 元字元字元
- 正規表示式 ^元字元字元
- 正規表示式 $ 元字元字元
- 正規表示式 \d元字元字元
- 正規表示式 \t 元字元字元
- 正規表示式 \t元字元字元
- 正規表示式 \0元字元字元
- 正規表示式 \s 元字元字元
- 正規表示式 \xxx 元字元字元
- 正規表示式 \r 元字元字元
- 正規表示式 \n 元字元字元
- 正規表示式 \W元字元字元
- 正規表示式 \w 元字元字元
- 正規表示式 點(.)元字元字元
- 正規表示式 \xnn元字元字元
- 正規表示式 \D 元字元字元
- 正規表示式 \uxxxx 元字元UX字元
- 正規表示式 \v 元字元字元
- 正規表示式 \f 元字元字元
- 正規表示式元字元與普通字元字元
- 正規表示式元字元大整理字元
- 正規表示式中常用的元字元字元
- 正規表示式 字元和字元類字元
- 正規表示式 轉義字元字元
- 匹配空白字元正規表示式字元
- JS正規表示式從入門到入土(2)—— 元字元和字元類JS字元
- 正規表示式中括號[]字元類字元
- 正規表示式 中括號[] 字元類字元
- 轉義正規表示式中特殊字元字元
- 正規表示式匹配雙位元組字元字元
- 正規表示式需要轉義的字元字元
- 正規表示式學習(2)---字元特性字元
- 正規表示式\d元字元(相對於數字0-9)字元
- 正規表示式提取指定字元之間字串字元字串
- 匹配純英文字元正規表示式字元
- 判斷字元是否重複正規表示式字元
- 正規表示式去除連續重複的字元字元
- 正規表示式.號元字元(除了回車符\r和換行符\n)字元