1. 程式人生 > >正則表達式——7.4 單詞邊界

正則表達式——7.4 單詞邊界

python 2 說明 tex 中文字符 img rip 字符串 image 表達式

??單詞邊界的準確解釋是:一端必須出現\w能匹配的字符,另一端不出現\w能匹配的字符。在JavaScript、PHP、Python 2、Ruby中,\w只能匹配[0-9a-z-A-Z_]。所以在這些語言中,\b\w+\b能用來匹配幾乎所有的英文單詞。

技術分享圖片
技術分享圖片
技術分享圖片

字符串 正則表達式 能否匹配 說明
tom,jerry(半角標點) \btom\b \w不能匹配半角標點
tom,jerry(全角標點) \btom\b \w可以匹配全角標點
tom和jerry \b和\b \w可以匹配中文字符
湯姆,jerry(半角標點) \btom\b \w不能匹配半角標點
湯姆,jerry(全角標點) \btom\b \w可以匹配全角標點

??總的來說,如果使用 Unicode 匹配規則,盡量不要在處理中英文混排文本時使用\b。如果使用 ASCII 匹配規則,則可以再處理英文文本時放心地使用\b

??也有更復雜的情況,比如 Java 就是如此。在 Java 中,雖然\w只能匹配[0-9a-zA-Z_]\b對“單詞字符”的判斷確實按照 Unicode 匹配規則的。後面有詳情

正則表達式——7.4 單詞邊界