正規表示式規則

2021-10-22 06:55:42 字數 1611 閱讀 1341

正規表示式是對字串(包括普通字元(例如,a 到 z 之間的字母)和特殊字元(稱為「元字元」))操作的一種邏輯公式,就是用事先定義好的一些特定字元、及這些特定字元的組合,組成乙個「規則字串」,這個「規則字串」用來表達對字串的一種過濾邏輯。正規表示式是一種文字模式,該模式描述在搜尋文字時要匹配的乙個或多個字串。

普通字元

[abcd]匹配所有a b c d字元

[^abcd]匹配除了a b c d的字元

[a-z]匹配所有大寫字母

[a-z]匹配所有小寫字母

/./匹配除\n \r之外的字元,相當於[^\n\r]

[\s]匹配所有空白符,包括換行符 [\s]匹配所有非空白符

/\w/匹配字母、數字、下劃線 等於[a-za-z0-9]

非列印字元

\cx 匹配control+x(字元),x為a-z,a-z

\f 匹配換頁符

\n匹配換行符

\r 匹配回車符

\t 匹配製表符

\v匹配垂直製表符

特殊字元

^字串開始位置

$ 字串結尾位置

*匹配子表示式零次或多次

+匹配子表示式一次或多次

?匹配子表示式零次或多次,當該字元緊跟在任何乙個其他限制符 (*, +, ?, , , ) 後面時,匹配模式是非貪婪的。非貪婪模式盡可能少的匹配所搜尋的字串,而預設的貪婪模式則盡可能多的匹配所搜尋的字串。例如,對於字串 "oooo",'o+?' 將匹配單個 "o",而 'o+' 將匹配所有 'o'。

x|y 匹配x或y

\b 匹配單詞邊界,如oo\b可以匹配"too"中的oo,不能匹配"food"中的oo

\b匹配非單詞邊界,如oo\b可以匹配"food"中的oo,不能匹配"too"中的oo

\d匹配數字字元,等於[0-9]

\d匹配非數字字元,等於[^0-9]

限定符

n是非負整數,如o匹配兩個o

n非負整數,如o匹配兩個以上o

n<=m,如o匹配前三個o

選擇

圓括號()將所有選擇項括起來,相鄰選擇項用|分隔,()會把每個分組匹配的值儲存,

如23465safjkh797809bjkhkh0djkahd,匹配規則/([1-9])[a-z]+)/

匹配兩個結果n[0]=5safjkh n[1]=9bjkhkh

exp1(?=exp2):查詢 exp2 前面的 exp1

(?<=exp2)exp1:查詢 exp2 後面的 exp1

exp1(?!exp2):查詢後面不是 exp2 的 exp1

(?修飾符

i 搜尋時不區分大小寫

g 全域性匹配

m 多行匹配

s 特殊字元.包含換行符\n

正規表示式從左往右進行計算,優先順序如下

轉義符\

圓括號和方括號(), (?:), (?=),

限定符*, +, ?, , ,

定位點和序列(即:位置和順序)^, $, \任何元字元、任何字元

替換,或:|

正規表示式 規則表示式

今天學習了正規表示式的一些基礎知識,1.概念 首先了解了一下正規表示式的含義 一些便於計算機識別的規則,能夠快速方便地對字元進行操作。而對於計算機而言,也有一寫規則表示式,它是能令計算機讀懂的 所以對我們來說看起來比較費勁 也相當於計算機的常識,一遇到就知道你要幹什麼。2.建立正則物件 var re...

正規表示式 規則

system.out.printf example 2f n 19.234 example 19.23 system.out.printf example 6.2f n 19.234 example 19.23 l xn匹配 ascii 碼值等於 n的字元 此處的 n 必須是兩位的十六進製制數。例如...

正規表示式規則

正規表示式是用乙個字串表示乙個特徵,來驗證另乙個字串是否滿足這一特徵的方法。正規表示式主要用於檢驗規則匹配,查詢特定規則字串的位置,進行特定規則替換。1.匹配普通字元 匹配乙個特定的字元,如a,那麼正規表示式就寫為a。2.匹配轉義字元 一般轉義字元 r 回車,n 換行,t 製表符,f 換頁符,v 垂...