關於正規表示式中\b的認識
\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前後的字元不能有\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中文網其他相關文章!

熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

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

熱門話題

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

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

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

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

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

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

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

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