首頁 web前端 js教程 關於正規表示式中\b的認識

關於正規表示式中\b的認識

Oct 20, 2017 am 11:11 AM
正規則 表達式

\b用來設定單字界限。配對單字(由字母數字或底線組成的)的開始或結束(匹配開始時,單字之前不能有\w;匹配結束時,單字之後不能有\w)。寫在表達式某個字元或字串之前,表示此字元或字串之前不能有\w對應的字元;寫在字元後面,表示此字元之後不能有\w對應的字元。 所以\b可以只有一個放在字元前面或後面,也可以有2個(表示字元前後都不能有\w對應的字元)。

先看正確的情況

 

圖1
註:1.如果\b描述的不是由字母數字或底線組成的單詞,則表達式定義錯誤,永遠不會有字串與其匹配。如圖2:

圖2

#2.目標字串中匹配的只是單獨的單字,不包括前後的間隔(如空格,\W等),圖1中匹配的「Russell」字元兩邊的空格,沒有計入(測試工具顯示沒有藍色背景填充)。
目的:符合獨立的單字或字串的部分,業務規則是尋找所有有單字「Russell」獨立出現的地方。如表達式\bRussell\b  則Russell123abc不匹配,因為Russell後面不應該跟字母或數字或底線,Russell 123abc,Russell@123abc都匹配。
3.特殊情況。自相矛盾的表達式定義。

關於正規表示式中\b的認識因為:根據\b的定義,\b只是確保下列情況,目標字串才能匹配:\b前後的字元不能有\w,所以非\w(或說\W)的字元在\b前後會匹配上。注意,這裡要求要想匹配上一定是非\w的字符,所以正則的潛台詞已經說了:匹配上\b的字符身邊一定就是非\w字符了,所以要在\b表達式之後再加上非\w的其他表達式,才有可能讓目標字串匹配上。
所以類似這樣的正規則永遠不會被配對:\bhi\bnihao     目標字串hinihao      hi nihao      hi*nihao        hi @#$nihao  hi*nihao        hi @#$nihao  時 中。 。 。
因為\bhi\b要求了hi前後不能有字母數字或下劃線的字符,並且hi之後緊接著要是nihao字符串。所以hi前後這能是空格! @#¥%等特殊字符,而表達式中定義緊接著hi之後的是nihao,所以永遠都不會有目標字串和此正則匹配。

辦法:在定義正規則時,就把這個非\w用正規考慮進去(寫入運算式),修正正規為\bhi\b \W+nihao 則有
hinihao
hi nihao
hi@nihao
hi!@#$ nihao

後三個都符合

#

以上是關於正規表示式中\b的認識的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

如何用php正規取代以什麼開頭的字串 如何用php正規取代以什麼開頭的字串 Mar 24, 2023 pm 02:57 PM

PHP正規表示式是一種針對文字處理和轉換的強大工具。它可以透過解析文字內容,並依照特定的模式進行替換或截取,達到有效管理文字資訊的目的。其中,正規表示式的一個常見應用是替換以特定字元開頭的字串,對此,我們進行如下的講解

如何用 Golang 正規匹配多個單字或字串? 如何用 Golang 正規匹配多個單字或字串? May 31, 2024 am 10:32 AM

Golang正規表示式使用管道符|來匹配多個單字或字串,將各個選項作為邏輯OR表達式分隔開來。例如:匹配"fox"或"dog":fox|dog匹配"quick"、"brown"或"lazy":(quick|brown|lazy)匹配"Go"、"Python"或"Java":Go|Python |Java匹配字或4位郵遞區號:([a-zA

php 如何用正規去除中文 php 如何用正規去除中文 Mar 03, 2023 am 10:12 AM

php用正規去除中文的方法:1、建立一個php範例檔;2、定義一個含有中文和英文的字串;3、透過「preg_replace('/([\x80-\xff]*)/i', '',$a);」正規方法去除查詢結果中的中文字元即可。

php怎麼利用正規匹配去掉html標籤 php怎麼利用正規匹配去掉html標籤 Mar 21, 2023 pm 05:17 PM

在本文中,我們將學習如何使用PHP正規表示式刪除HTML標籤,並從HTML字串中提取純文字內容。為了示範如何去除HTML標記,讓我們先定義一個包含HTML標籤的字串。

如何解決Python的表達式語法錯誤? 如何解決Python的表達式語法錯誤? Jun 24, 2023 pm 05:04 PM

Python作為一種高階程式語言,易於學習和使用。一旦需要編寫Python程式時,無法避免地遇到語法錯誤,表達式語法錯誤是常見的一種。在本文中,我們將討論如何解決Python的表達式語法錯誤。表達式語法錯誤是Python中最常見的錯誤之一,它通常是由於錯誤的使用語法或缺少必要組件而導致的。在Python中,表達式通常由數字、字串、變數和運算子組成。最常見的

使用PHP正規實現中文取代功能的技巧分享 使用PHP正規實現中文取代功能的技巧分享 Mar 24, 2024 pm 05:57 PM

使用PHP正規實現中文替換功能的技巧分享在web開發中,經常會遇到需要對中文內容進行替換的情況。 PHP作為一種流行的伺服器端腳本語言,提供了強大的正規表示式功能,可以輕鬆實現中文替換。本文將分享一些在PHP中使用正規實現中文替換的技巧,同時提供具體的程式碼範例。 1.使用preg_replace函數實作中文替換PHP中的preg_replace函數可以用來

如何使用PHP正規表示式驗證URL是否為HTTPS協議 如何使用PHP正規表示式驗證URL是否為HTTPS協議 Jun 24, 2023 am 08:16 AM

網站安全性越來越受到關注,使用HTTPS協議保證資料傳輸的安全性已成為目前網站開發的重要內容。在PHP開發中,如何使用正規表示式驗證URL是否為HTTPS協定呢?下面我們就來了解一下。正規表示式正規表示式是一種用來描述規律的表達式,是處理文字的強大工具,被廣泛應用於文字匹配、搜尋和替換等方面。在PHP開發中,我們可以透過正規表示式來匹配URL中的http

深入詳解PHP正規表示式轉義 深入詳解PHP正規表示式轉義 Mar 21, 2023 pm 02:52 PM

正規表示式是一種用於匹配字串的強大工具,它可以方便地進行字串操作。然而,在編寫正規表示式的過程中,有時可能需要匹配一些特殊字符,如“\”,“|”、“{”等,這些字符在正則表達式中具有特殊含義,需要進行轉義。

See all articles