最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

  發(fā)布時(shí)間:2025-07-03 10:48:42   作者:佚名   我要評(píng)論
在wps使用正則表達(dá)式的時(shí)候,會(huì)遇到需要精準(zhǔn)匹配某些字符的情況,這時(shí)候 \b \B 就派上用場(chǎng)了,若是不理解這兩個(gè)正則表達(dá)式元字符,用起來(lái)便不會(huì)得心應(yīng)手

有的小伙伴反饋WPS表格“正則表達(dá)式 \b與\B 單詞邊界概念太抽象了”,我咋理解不了呢?不用怕,我們?cè)賮?lái)深入的研究一下。

\b(單詞邊界)含義:

匹配單詞的開(kāi)始或結(jié)束位置,即單詞與非單詞字符(如空格、標(biāo)點(diǎn)符號(hào)、字符串首尾)之間的“零寬度”邊界。

\B(非單詞邊界)含義:

匹配不在單詞邊界的空字符串,即單詞字符之間或非單詞字符之間的位置。

單看兩者的概念,我們好像云里霧里,不明其所以然。

其實(shí)我們可以這樣理解:

單詞邊界 \b 就像貼在單詞首尾的“隱形標(biāo)簽”,用來(lái)標(biāo)記單詞的開(kāi)始或結(jié)束位置。非單詞邊界 \B 正好互補(bǔ),匹配不在單詞邊界的字符,只匹配連續(xù)字符內(nèi)部的位置。常用于連續(xù)文本中的子串提取。兩者定位的只是位置,本身不占用字符。

我知道你還沒(méi)聽(tīng)懂,話不多說(shuō),上例子。

我們先來(lái)看\b(單詞邊界)占用的位置。

輸入公式:

=REGEXP(A2,"\b",2,"|")

我們利用"\b"定位A2中的單詞邊界,找到邊界后,用替換模式,在定位到的單詞邊界處替換為分隔符“|”,這樣我們可以更加直觀的看到單詞邊界在哪里。

很明顯:“location”的首尾處分別是單詞邊界,“cat”的首尾處分別是單詞邊界。

印證了我們之前抽象的概念:匹配單詞的首尾邊界。

應(yīng)用理解1:

我們要將單獨(dú)的單詞“cat”,替換為“貓”,而“location”中的“cat”則無(wú)需替換。這時(shí)候就用到了單詞邊界的概念。

我們輸入公式:

=REGEXP(A2,"\bcat\b",2,"貓")

這樣我們將左右單詞邊界\b之間為單純“cat”的部分,即單獨(dú)的單詞“cat”定位提取,然后替換為"貓"。“location”中的“cat”部分自動(dòng)忽略。

應(yīng)用理解2:

我們想要將A2單元格內(nèi),單獨(dú)是4個(gè)字母的單詞提取出來(lái)。很明顯只有單詞“blue”符合這個(gè)要求。那么我們就可以利用\b(單詞邊界)的思路解決。

我們輸入公式:

=REGEXP(A2,"\b",2,"|")

首先我們先來(lái)觀察一下A2單元格內(nèi)容的單詞邊界。利用"\b"定位單詞邊界,然后將邊界位置暫時(shí)替換為分隔符“|”,有助于我們?nèi)庋壑苯佑^察,將抽象具象化。

我們觀察到了單詞邊界的位置,其實(shí)就是3個(gè)單詞它們分別的首尾處。又一次印證了我們之前抽象的概念:匹配單詞的首尾邊界。\b是“單詞保鏢”,專(zhuān)管獨(dú)立內(nèi)容。

我們完善單詞邊界:

=REGEXP(A2,"\b\w{4}\b",0)

\w{4}:表示精確到4個(gè)字符長(zhǎng)度的任意字母

在上面3組單詞邊界的首尾處,符合\b\w{4}\b,即首尾單詞邊界\b中間為“4個(gè)字母”的只有“blue”了。所以用提取模式,將“blue”提取出來(lái)就好了。

我們?cè)賮?lái)看\B(非單詞邊界)占用的位置。

輸入公式:

=REGEXP(A2,"\B",2,"|")

利用"\B",定位非單詞邊界位置,然后用替換模式,將定位到的非單詞邊界位置,用分隔符"|"替換。這樣做的好處仍然是化抽象為具象,更容易被肉眼觀察具體位置。

很明顯,我們觀察到:?jiǎn)卧~非邊界位置,正好是單詞邊界位置的剩余位置,即排除了獨(dú)立單詞“location”與“cat”各首尾部分位置后,剩余的單詞內(nèi)部,字母之間,符號(hào)之間的位置。

應(yīng)用理解1:

我們要將連續(xù)內(nèi)容“location”中的“cat”替換為“貓”。而單獨(dú)的單詞“cat”不做處理。這時(shí)候就用到了非單詞邊界。

輸入公式:

=REGEXP(A2,"\Bcat\B",2,"貓")

被非單詞邊界\B左右包圍起來(lái)的“cat”,只存在于“location”這個(gè)連續(xù)字母之中。所以用替換模式,將“location”中包含的“cat”替換為“貓”,獨(dú)立單詞“cat”將不做處理。

應(yīng)用理解2:

我們想要在數(shù)字之間批量加上符號(hào)“-”。

輸入公式:

=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í)用"|"替換,化抽象為具象,更容易被肉眼觀察非單詞邊界位置。

我們觀察到非單詞邊界位置,位于數(shù)字字符串內(nèi)部的數(shù)字之間的位置。

我們繼續(xù)完善非單詞邊界:

=REGEXP(A2,"\B\d{2}\B",0)

d{2}:為任意的2位數(shù)字。

符合左右被非單詞邊界\B包圍的任意的2位數(shù)字,只有數(shù)字字符串中間的2位數(shù)字。用提取模式進(jìn)行提取即可。

推薦閱讀:超全面使用方法! WPS表格更新的16個(gè)新函數(shù)個(gè)個(gè)都是yyds

相關(guān)文章

最新評(píng)論

阜宁县| 治多县| 襄城县| 广汉市| 内黄县| 维西| 桂东县| 隆尧县| 宜章县| 曲水县| 望都县| 清苑县| 河津市| 沽源县| 轮台县| 亚东县| 南开区| 翁牛特旗| 米易县| 台安县| 嘉义市| 屏东市| 凌源市| 阜新| 巴塘县| 云南省| 叙永县| 五大连池市| 井冈山市| 鹤岗市| 广安市| 汶川县| 广丰县| 扶风县| 敦化市| 南华县| 永吉县| 玉林市| 昌图县| 松溪县| 西宁市|