正規表示式相關 引言 基礎高階 工具資料

2022-07-16 01:33:16 字數 2210 閱讀 6138

引言

基礎高階

工具資料

正規表示式(regular expression)就是用乙個「字串」來描述乙個特徵,然後去驗證另乙個「字串」是否符合這個特徵。比如 表示式「ab+」 描述的特徵是「乙個 'a' 和 任意個 'b' 」,那麼 'ab', 'abb', 'abbbbbbbbbb' 都符合這個特徵。

正規表示式可以用來:(1)驗證字串是否符合指定特徵,比如驗證是否是合法的郵件位址。(2)用來查詢字串,從乙個長的文字中查詢符合指定特徵的字串,比查詢固定字串更加靈活方便。(3)用來替換,比普通的替換更強大。

正規表示式學習起來其實是很簡單的,不多的幾個較為抽象的概念也很容易理解。之所以很多人感覺正規表示式比較複雜,一方面是因為大多數的文件沒有做到由淺入深地講解,概念上沒有注意先後順序,給讀者的理解帶來困難;另一方面,各種引擎自帶的文件一般都要介紹它特有的功能,然而這部分特有的功能並不是我們首先要理解的。

節選自:

揭開正規表示式的神秘面紗 

· 普通字元

· 簡單的轉義字元

· 字元集合

· 自定義字元集合

· 匹配次數修飾

· 特殊符號

------------

· 貪婪與非貪婪

· 反向引用

· 預搜尋

------------

· 其他規則

· 更多提示

節選自:

揭開正規表示式的神秘面紗 

節選自:正規表示式30分鐘入門教程   

字元邊界:本身不匹配任何字元,只對字元邊界和字元間縫隙附加條件的表示式。

^當前位置必須是文字開始位置

$當前位置必須是文字結束位置

\b當前位置的左右兩側,只能有一側是字母數字或下劃線

如果正規表示式的匹配模式為 multiline 模式,^ 可匹配一行文字的行首,$ 可匹配一行文字的行末。更多詳情,參見正規表示式匹配模式。

當 \b 被包含於字元集合中時,\b 代表退格符(ascii碼 = 8)。

假設你在一篇英文**裡查詢hi,你可以使用正規表示式hi。

這幾乎是最簡單的正規表示式了,它可以精確匹配這樣的字串:由兩個字元組成,前乙個字元是h,後乙個是i。通常,處理正規表示式的工具會提供乙個忽略大小寫的選項,如果選中了這個選項,它可以匹配hi,hi,hi,hi這四種情況中的任意一種。

不幸的是,很多單詞裡包含hi這兩個連續的字元,比如him,history,high等等。用hi來查詢的話,這裡邊的hi也會被找出來。如果要精確地查詢hi這個單詞的話,我們應該使用\bhi\b。

\b是正規表示式規定的乙個特殊**(好吧,某些人叫它元字元,metacharacter),代表著單詞的開頭或結尾,也就是單詞的分界處。雖然通常英文的單詞是由空格,標點符號或者換行來分隔的,但是\b並不匹配這些單詞分隔字元中的任何乙個,它只匹配乙個位置

如果需要更精確的說法,\b匹配這樣的位置:它的前乙個字元和後乙個字元不全是(乙個是,乙個不是或不存在)\w。

假如你要找的是hi後面不遠處跟著乙個lucy,你應該用\bhi\b.*\blucy\b。

這裡,.是另乙個元字元,匹配除了換行符以外的任意字元。*同樣是元字元,不過它代表的不是字元,也不是位置,而是數量——它指定*前邊的內容可以連續重複使用任意次以使整個表示式得到匹配。因此,.*連在一起就意味著任意數量的不包含換行的字元。現在\bhi\b.*\blucy\b的意思就很明顯了:先是乙個單詞hi,然後是任意個任意字元(但不能是換行),最後是lucy這個單詞。

節選自:正規表示式30分鐘入門教程   

/files/kiant71/deelx_正則引擎文件.rar

使用 regex match tracer web 版   

js 正則引擎測試   

js 正則替換測試   

正規表示式30分鐘入門教程   

揭開正規表示式的神秘面紗   

深入淺出之正規表示式(一)   

深入淺出之正規表示式(二)   

筆記:如何寫出高效率的正規表示式   

常用正規表示式-月光部落格   

正規表示式高階

或 的小細節 替換匹配 任一側最大的表示式 2.正規表示式和相應編碼 3.正規表示式引擎 舉例簡單說明nfa與dfa工作的區別 比如有字串this is yansen s blog,正規表示式為 ya msen nsen nsem 不要在乎表示式怎麼樣,這裡只是為了說明引擎間的工作區別 nfa工作方...

正規表示式高階

捕獲組就是把正規表示式中子表示式匹配的內容,儲存到記憶體中以數字編號或手動命名的組裡,以供後面引用。表示式 說明 expression 普通捕獲組,將子表示式expression匹配的內容儲存到以數字編號的組裡 expression 命名捕獲組,將子表示式expression匹配的內容儲存到以nam...

正規表示式 相關

限定符 說明 指定零個或更多個匹配 例如 w 或 abc 等效於。指定乙個或多個匹配 例如 w 或 abc 等效於。指定零個或乙個匹配 例如 w?或 abc 等效於。指定恰好 n 個匹配 例如 pizza 指定至少 n 個匹配 例如 abc 指定至少n 個但不多於m 個匹配。指定盡可能少地使用重複的...