我終于理解透了! 深入淺出wps正則表達式中的邊界\b和\B概念

有的小伙伴反饋WPS表格“正則表達式 \b與\B 單詞邊界概念太抽象了”,我咋理解不了呢?不用怕,我們再來深入的研究一下。
\b(單詞邊界)含義:
匹配單詞的開始或結(jié)束位置,即單詞與非單詞字符(如空格、標點符號、字符串首尾)之間的“零寬度”邊界。
\B(非單詞邊界)含義:
匹配不在單詞邊界的空字符串,即單詞字符之間或非單詞字符之間的位置。
單看兩者的概念,我們好像云里霧里,不明其所以然。
其實我們可以這樣理解:
單詞邊界 \b 就像貼在單詞首尾的“隱形標簽”,用來標記單詞的開始或結(jié)束位置。非單詞邊界 \B 正好互補,匹配不在單詞邊界的字符,只匹配連續(xù)字符內(nèi)部的位置。常用于連續(xù)文本中的子串提取。兩者定位的只是位置,本身不占用字符。
我知道你還沒聽懂,話不多說,上例子。
我們先來看\b(單詞邊界)占用的位置。
輸入公式:
=REGEXP(A2,"\b",2,"|")
我們利用"\b"定位A2中的單詞邊界,找到邊界后,用替換模式,在定位到的單詞邊界處替換為分隔符“|”,這樣我們可以更加直觀的看到單詞邊界在哪里。
很明顯:“location”的首尾處分別是單詞邊界,“cat”的首尾處分別是單詞邊界。
印證了我們之前抽象的概念:匹配單詞的首尾邊界。
應(yīng)用理解1:
我們要將單獨的單詞“cat”,替換為“貓”,而“location”中的“cat”則無需替換。這時候就用到了單詞邊界的概念。
我們輸入公式:
=REGEXP(A2,"\bcat\b",2,"貓")
這樣我們將左右單詞邊界\b之間為單純“cat”的部分,即單獨的單詞“cat”定位提取,然后替換為"貓"。“location”中的“cat”部分自動忽略。
應(yīng)用理解2:
我們想要將A2單元格內(nèi),單獨是4個字母的單詞提取出來。很明顯只有單詞“blue”符合這個要求。那么我們就可以利用\b(單詞邊界)的思路解決。
我們輸入公式:
=REGEXP(A2,"\b",2,"|")
首先我們先來觀察一下A2單元格內(nèi)容的單詞邊界。利用"\b"定位單詞邊界,然后將邊界位置暫時替換為分隔符“|”,有助于我們?nèi)庋壑苯佑^察,將抽象具象化。
我們觀察到了單詞邊界的位置,其實就是3個單詞它們分別的首尾處。又一次印證了我們之前抽象的概念:匹配單詞的首尾邊界。\b是“單詞保鏢”,專管獨立內(nèi)容。
我們完善單詞邊界:
=REGEXP(A2,"\b\w{4}\b",0)
\w{4}:表示精確到4個字符長度的任意字母
在上面3組單詞邊界的首尾處,符合\b\w{4}\b,即首尾單詞邊界\b中間為“4個字母”的只有“blue”了。所以用提取模式,將“blue”提取出來就好了。
我們再來看\B(非單詞邊界)占用的位置。
輸入公式:
=REGEXP(A2,"\B",2,"|")
利用"\B",定位非單詞邊界位置,然后用替換模式,將定位到的非單詞邊界位置,用分隔符"|"替換。這樣做的好處仍然是化抽象為具象,更容易被肉眼觀察具體位置。
很明顯,我們觀察到:單詞非邊界位置,正好是單詞邊界位置的剩余位置,即排除了獨立單詞“location”與“cat”各首尾部分位置后,剩余的單詞內(nèi)部,字母之間,符號之間的位置。
應(yīng)用理解1:
我們要將連續(xù)內(nèi)容“location”中的“cat”替換為“貓”。而單獨的單詞“cat”不做處理。這時候就用到了非單詞邊界。
輸入公式:
=REGEXP(A2,"\Bcat\B",2,"貓")
被非單詞邊界\B左右包圍起來的“cat”,只存在于“location”這個連續(xù)字母之中。所以用替換模式,將“location”中包含的“cat”替換為“貓”,獨立單詞“cat”將不做處理。
應(yīng)用理解2:
我們想要在數(shù)字之間批量加上符號“-”。
輸入公式:
=REGEXP(A2,"\B",2,"-")
用非單詞邊界"\B",定位到數(shù)字字符串中的非單詞邊界位置,即除了首尾位置后,字符內(nèi)部中間部分的位置,也就是內(nèi)部數(shù)字與數(shù)字之間的位置,用替換模式,將這些位置替換為“-”即可。
應(yīng)用理解3:
我們想要提取任意統(tǒng)一4位數(shù)字的中間2位數(shù)字。
輸入公式:
=REGEXP(A2,"\B",2,"|")
利用非單詞邊界\B,將定位到的非單詞邊界位置先暫時用"|"替換,化抽象為具象,更容易被肉眼觀察非單詞邊界位置。
我們觀察到非單詞邊界位置,位于數(shù)字字符串內(nèi)部的數(shù)字之間的位置。
我們繼續(xù)完善非單詞邊界:
=REGEXP(A2,"\B\d{2}\B",0)
d{2}:為任意的2位數(shù)字。
符合左右被非單詞邊界\B包圍的任意的2位數(shù)字,只有數(shù)字字符串中間的2位數(shù)字。用提取模式進行提取即可。
相關(guān)文章
輕松搞定九九乘法表案例! wps利用MMULT函數(shù)玩矩陣的技巧
MMULT函數(shù)是wps中的一個標準數(shù)學(xué)函數(shù),用于計算兩個矩陣的乘積,用它昨九九乘法表確認方便,詳細請看下文介紹2025-07-03萬能文本函數(shù)REGEXP! wps表格中混亂數(shù)據(jù)處理除了textsplit函數(shù)用它也不
今天我們來介紹正則表達式函數(shù)REGEXP,這個函數(shù)非常好用,有了它,很多文本函數(shù)都可以不用了,在介紹它之前,我們一起來學(xué)習(xí)一下正則表達式的基礎(chǔ)知識以及用法2025-07-03將一維考勤表向二維透視! wps函數(shù)pivotby是一個超級透視表函數(shù)
頻繁需要將單一維度數(shù)據(jù)表迅速轉(zhuǎn)換為多維度數(shù)據(jù)管理模式,微數(shù)據(jù)處理帶來了很多麻煩,為此,可利用WPS辦公軟件最新版本中引入的PIVOTBY函數(shù),一起來學(xué)習(xí)下吧2025-07-02wps表格中if函數(shù)怎么用? 掌握WPS表格中IF函數(shù)的多重嵌套技巧
剛學(xué)Excel的新手必看!IF函數(shù)多條件判斷技巧解析,助你快速進階表格處理,下面我們就來看看詳細案例2025-07-02解放雙手! wps表格中函數(shù)LAMBDA代替繁瑣重復(fù)的IF多層嵌套
LAMBDA函數(shù)在wps中扮演著自定義函數(shù)的角色,它賦予了用戶創(chuàng)造自己函數(shù)的能力,且規(guī)則可由個人自行設(shè)定,它不僅具有封裝復(fù)雜邏輯、提高代碼可讀性的顯著優(yōu)點,還支持一次定2025-07-02wps如何開根號? WPS利用AI編寫代碼統(tǒng)一為數(shù)值計算平方根的技巧
wps表格中的數(shù)據(jù)需要進行開根號計算,雖然我們用SQRT函數(shù)可以實現(xiàn),現(xiàn)在利用ai計算更方便,下面我們就來看看詳細教程2025-07-02WPS查重原來這么簡單! WPS高亮標出重復(fù)數(shù)據(jù)的技巧
在日常工作中,我們經(jīng)常需要處理包含大量數(shù)據(jù)的表格,其中不可避免地會出現(xiàn)許多重復(fù)或無效的數(shù)據(jù),怎么快速查重并高亮出重復(fù)數(shù)據(jù)呢?詳細情況請看下文介紹2025-07-02wps excel玩轉(zhuǎn)合并數(shù)據(jù)只需要1種符號+5類函數(shù)+2個實操
wps或者excel表格中經(jīng)常設(shè)計多個單元格合并到一個單元格的問題,很多朋友不知道遇到不同的情況該怎么合并,下面我們就來分享用1種符號,5類函數(shù),2個實操,玩轉(zhuǎn)合并數(shù)據(jù)的2025-07-01論文中怎么進行文獻的交叉引用? wps交叉引用多篇文獻實現(xiàn)跳轉(zhuǎn)的技巧
我們寫論文的時候都不可避免的需要進行文獻引用,該怎么實現(xiàn)呢?下面我們就來看看通過wps實現(xiàn)論文文獻交叉引用的技巧2025-06-27- 最近有用戶提出來,寫論文一般都是用三線表,能不能快速生成,今天我們就來看看wps中制作三線表的技巧2025-06-26