3 回答

TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超6個(gè)贊
用不同的例子:
考慮這是要搜索的字符串和模式是'cat':
text = "catmania thiscat thiscatmaina";
現(xiàn)在定義,
'\ b'查找/匹配每個(gè)單詞開(kāi)頭或結(jié)尾的模式。
'\ B'找不到/匹配每個(gè)單詞開(kāi)頭或結(jié)尾的模式。
不同案例:
案例1:每個(gè)單詞的開(kāi)頭
result = text.replace(/\bcat/g, "ct");
現(xiàn)在,結(jié)果是“ctmania thiscat thiscatmaina”
案例2:每個(gè)單詞的結(jié)尾
result = text.replace(/cat\b/g, "ct");
現(xiàn)在,結(jié)果是“catmania thisct thiscatmaina”
案例3:不是在開(kāi)始
result = text.replace(/\Bcat/g, "ct");
現(xiàn)在,結(jié)果是“catmania thisct thisctmaina”
案例4:不是最后的
result = text.replace(/cat\B/g, "ct");
現(xiàn)在,結(jié)果是“ctmania thiscat thisctmaina”
案例5:既不是開(kāi)始也不是結(jié)束
result = text.replace(/\Bcat\B/g, "ct");
現(xiàn)在,結(jié)果是“catmania thiscat thisctmaina”
希望這可以幫助 :)

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超3個(gè)贊
混亂源于你的思維\b
匹配空間(可能是因?yàn)椤癰”表示“空白”)。
\b
匹配單詞開(kāi)頭或結(jié)尾的空字符串。 \B
匹配不在單詞開(kāi)頭或結(jié)尾的空字符串。這里的關(guān)鍵是“ - ”不是單詞的一部分。因此<left>-<right>
匹配,\b-\b
因?yàn)樵谌魏我粋?cè)都有單詞邊界-
。另一方面<left> - <right>
(注意空格),短劃線(xiàn)兩側(cè)沒(méi)有單詞邊界。單詞邊界是左右一個(gè)空格。
另一方面,當(dāng)搜索\bcat\b
單詞邊界時(shí),行為更直觀,并且按預(yù)期匹配“cat”。
- 3 回答
- 0 關(guān)注
- 1746 瀏覽
添加回答
舉報(bào)