C 正則表達

2021-04-09 02:15:05 字數 1765 閱讀 7351

轉義符

說明一般字元

除 .$ ^

與 指定的命名字元類中的任何字元都匹配。支援的名稱為 unicode 組和塊範圍。例如,ll、nd、z、isgreek、isboxdrawing。可以使用 getunicodecategory 方法找到某個字元所屬的 unicode 類別。

/p 與在 中指定的組和塊範圍不包括的文字匹配。

/w 與任何單詞字元匹配。等效於 unicode 字元類別 [/p/p/p/p/p/p/p]。如果用 ecmascript 選項指定了符合 ecmascript 的行為,則 /w 等效於 [a-za-z_0-9]。

/w 與任何非單詞字元匹配。等效於 unicode 字元類別 [^/p/p/p/p/p/p/p]。如果用 ecmascript 選項指定了符合 ecmascript 的行為,則 /w 等效於 [^a-za-z_0-9]。

/s 與任何空白字元匹配。等效於 unicode 字元類別 [/f/n/r/t/v/x85/p]。如果用 ecmascript 選項指定了符合 ecmascript 的行為,則 /s 等效於 [ /f/n/r/t/v]。

/s 與任何非空白字元匹配。等效於 unicode 字元類別 [^/f/n/r/t/v/x85/p]。如果用 ecmascript 選項指定了符合 ecmascript 的行為,則 /s 等效於 [^ /f/n/r/t/v]。

/d 與任何十進位制數字匹配。對於 unicode 類別的 ecmascript 行為,等效於 /p,對於非 unicode 類別的 ecmascript 行為,等效於 [0-9]。

/d 與任何非數字匹配。對於 unicode 類別的 ecmascript 行為,等效於 /p,對於非 unicode 類別的 ecmascript 行為,等效於 [^0-9]。

斷言 說明

^ 指定匹配必須出現在字串的開頭或行的開頭。。

$ 指定匹配必須出現在以下位置:字串結尾、字串結尾處的 /n 之前或行的結尾。

/a 指定匹配必須出現在字串的開頭(忽略 multiline 選項)。

/z 指定匹配必須出現在字串的結尾或字串結尾處的 /n 之前(忽略 multiline 選項)。

/z 指定匹配必須出現在字串的結尾(忽略 multiline 選項)。

/g 指定匹配必須出現在上乙個匹配結束的地方。與 match.nextmatch() 一起使用時,此斷言確保所有匹配都是連續的。

/b 指定匹配必須出現在 /w(字母數字)和 /w(非字母數字)字元之間的邊界上。匹配必須出現在單詞邊界上,即出現在由任何非字母數字字元分隔的單詞中第乙個或最後乙個字元上。

/b 指定匹配不得出現在 /b 邊界上。

限定符

說明 *

指定零個或更多個匹配;例如 /w* 或 (abc)*。等效於 。

+ 指定乙個或多個匹配;例如 /w+ 或 (abc)+。等效於 。

? 指定零個或乙個匹配;例如 /w? 或 (abc)?。等效於 。

指定恰好 n 個匹配;例如 (pizza)。

指定至少 n 個匹配;例如 (abc)。

指定至少 n 個但不多於 m 個匹配。

*? 指定盡可能少地使用重複的第乙個匹配(等效於 lazy *)。

+? 指定盡可能少地使用重複但至少使用一次(等效於 lazy +)。

?? 指定使用零次重複(如有可能)或一次重複 (lazy ?)。

? 等效於 (lazy )。

? 指定盡可能少地使用重複但至少使用 n 次 (lazy )。

? 指定介於 n 次和 m 次之間、盡可能少地使用重複 (lazy )。

C 正規表示式

c 中的正規表示式 1 c 中的正規表示式 jeffrey e.f.friedl寫了一本關於正規表示式的書 精通正規表示式 作者為了使讀者更好的理解和掌握正規表示式,編造了乙個故事。該書的語言以perl為主。據我所知c 中的正規表示式也是基於perl5。所以它們應該有許多的共同之處。其實,我並不打算...

C 正規表示式

正規表示式 元字元 匹配任何單個字元,匹配括號內的任何乙個字元,改變優先順序,定義提取組,將兩個匹配條件進行邏輯或運算,匹配0至多個它之前的子表示式,和萬用字元 沒關係,匹配前面的子表示式一次或多次,匹配前面的子表示式零次或一次,匹配前面表示式確定的n次,匹配前面表示式至少n次,匹配前面表示式n到m...

C 正規表示式

正規表示式元字元 1 中括號 用來描述匹配規則,乙個中括號只能匹配乙個字元 2 小括號 用來描述匹配的字串,乙個小括號表示匹配一段字串 3 大括號 用來描述匹配的具體數量 4 s 用於匹配單個空格符,包括tab鍵和換行符 5 s 用於匹配除單個空格符之外的所有字元 6 d 用於匹配從0到9的數字 7...