正規表示式總結

2021-10-03 05:10:26 字數 1476 閱讀 1830

表示所有大寫和小寫字母、所有數字、所有標點符號和一些其它符號;

特殊字元,即具有特殊含義的字元,而非字元表面意義;特殊字元的應用在正規表示式中尤為關鍵;

限定符用來指定正規表示式必須匹配乙個模式多少次才能滿足匹配條件,有*,+,?,,,;

其中,前三種在特殊字元裡已經解釋過;後三種分別代表,恰好匹配n次,至少匹配n次,匹配n次到m次;

定位符有四個,^、$、\b、\b,前兩個之前已經解釋過;\b表示匹配乙個單詞邊界,\b表示非單詞邊界匹配;

貪婪模式在整個表示式匹配成功的前提下,盡可能多的匹配,而非貪婪模式在整個表示式匹配成功的前提下,盡可能少的匹配;

*和+限定符都是貪婪的,如果想要變為非貪婪,只需要在後面加上乙個?就可以實現非貪婪或最小匹配;

\d,匹配數字字元

\w,匹配數字或字母

\s,匹配空格

\s,匹配非空格外的所有字元

.,匹配除換行符以外的所有單個字元

查詢所有大寫字母開頭的變數:[a-z][a-z]

單個字元的匹配,共有五個;

數量限定符,除了三種常用限定以外,還有三種指定具體數量的限制;

定位符,用於定位;

至於中括號表示式的使用,|的使用等,其本質是比較簡單的邏輯運算,在正規表示式中也存在與或非的邏輯

正規表示式主要用於查詢和替換,在lua中使用正規表示式,主要就應用於字串,也就是我們通常所說的模式匹配;(其實在lua中並不是嚴格的正規表示式,lua稱其為pattern即模式);

lua中的正規表示式有幾個比較特殊的地方,】

*,與該類中的0個或多個字元重複匹配。這些重複項將始終匹配最長的序列;

+,與該類中的1個或多個字元重複匹配。這些重複項將始終匹配最長的序列;

-,它也匹配類中0個或多個字元重複。與「 *」不同,這些重複項將始終匹配最短的序列;

?,與該類**現0或1個字元相匹配;

詳細參考:lua - lua中的貪婪/非貪婪模式匹配和可選字尾 - it工具網

如下,查詢乙個函式的定義,乙個函式可能被到處使用,但是不清楚在**定義的,

.net提供了正規表示式類,提供了一些通用的功能;

使用regex類,我們可以查詢、替換以及字串分割等等;

regex.match(str, pattern)

regex.replace(str, pattern,replacement)

github經典教程-learn-regex

知乎-你是如何學會正規表示式的

正規表示式 正規表示式 總結

非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 非正浮點數 d d 0 0 負浮點數 正浮點數正則式 英文本串 a za z...

正規表示式總結

正規表示式用於操作字串的規則,這些規則由一些符號所組成。使用正規表示式可以進行更複雜的操作,而且這種複雜的操作要比方法短的多。功能 1,匹配。使用的是string類中的matches方法。2,切割。使用的string類split方法。3,替換。4,查詢。1,將正則規則通過pattern類中的stat...

正規表示式總結

常用正規表示式總結 w w w 驗證 號碼 d d d 正確格式為 x x xx x xx x 和 xx 驗證身份證號 15位或18位數字 d d 驗證一年的12個月 0?1 9 1 0 2 正確格式為 01 09 和 1 12 驗證乙個月的31天 0?1 9 1 2 0 9 30 31 正確格式為...