正規表示式總結

2021-08-22 01:18:45 字數 2320 閱讀 2127

正規表示式主要用來分析文字內容,特別適合校驗資料

^符號匹配字串的開頭。

例如:    ^abc 與"abc xyz"匹配,而不與"xyz abc"匹配

$符號匹配字串的結尾。

例如:    abc$ 與"xyz abc"匹配,而不與"abc xyz"匹配。    注意:如果同時使用^符號和$符號,將進行精確匹配。

例如:       ^abc$ 只與"abc"匹配 

*符號匹配0個或多個前面的字元。

例如:    ab* 可以匹配"ab"、"abb"、"abbb"等

+符號匹配至少乙個前面的字元。

例如:    ab+ 可以匹配"abb"、"abbb"等,但不匹配"ab"。

?符號匹配0個或1個前面的字元。

例如:    ab?c? 可以且只能匹配"abc"、"abbc"、"abcc"和"abbcc"

.符號匹配除換行符以外的任何字元。

例如:    (.)+ 匹配除換行符以外的所有字串

x|y匹配"x"或"y"。

例如:    abc|xyz 可匹配 "abc"或 "xyz",而"ab(c|x)yz"匹配 "abcyz"和"abxyz"

匹配恰好n次(n為非負整數)前面的字元。

例如:    a 可以匹配"aa",但不匹配"a"

匹配至少n次(n為非負整數)前面的字元。

例如:    a 匹配"aaa"、"aaaa"等,但不匹配"a"和"aa"。    注意:a等價於a+       a等價於a*

匹配至少m個,至多n個前面的字元。

例如:    a 只匹配"a"、"aa"和"aaa"。    注意:a等價於a?

[xyz]表示乙個字符集,匹配括號中字元的其中之一。

例如:    [abc] 匹配"a"、"b"和"c"

[^xyz]表示乙個否定的字符集。匹配不在此括號中的任何字元。

例如:    [^abc] 可以匹配除"a"、"b"和"c"之外的任何字元

[a-z]表示某個範圍內的字元,匹配指定區間內的任何字元。

例如:    [a-z] 匹配從"a"到"z"之間的任何乙個小寫字母字元

[^m-n]表示某個範圍之外的字元,匹配不在指定範圍內的字元。

例如:    [m-n] 匹配除從"m"到"n"之間的任何字元

/符號是轉義操作符。

例如:    /n 換行符    /f 分頁符    /r 回車    /t 製表符    /v 垂直製表符     // 匹配"/"    // 匹配"/"    /s 任何白字元,包括空格、製表符、分頁符等。等價於"[ /f/n/r/t/v]"    /s 任何非空白的字元。等價於"^/f/n/r/t/v]"    /w 任何單詞字元,包括字母和下劃線。等價於"[a-za-z0-9_]"    /w 任何非單詞字元。等價於"[^a-za-z0-9_]"    /b匹配單詞的結尾。

例如:      ve/b 匹配單詞"love"等,但不匹配"very"、"even"等

/b匹配單詞的開頭。

例如:      ve/b 匹配單詞"very"等,但不匹配"love"等

/d匹配乙個數字字元,等價於[0-9]。

例如:      abc/dxyz 匹配"abc2xyz"、"abc4xyz"等,      但不匹配"abcaxyz"、"abc-xyz"等

/d匹配乙個非數字字元,等價於[^0-9]。

例如:      abc/dxyz 匹配"abcaxyz"、"abc-xyz"等,      但不匹配"abc2xyz"、"abc4xyz"等

/num匹配num個(其中num為乙個正整數),引用回到記住的匹配。

例如:      (.)/1 匹配兩個連續相同的字元。

/onum匹配n(其中n為乙個小於256的八進位製換碼值)。

例如:      /o011 匹配製表符

/xnum匹配num(其中num為乙個小於256的十六進製製換碼值)。

例如:      /x41 匹配字元"a"

通過上面的例子的學習,可以寫下如下幾個常用的正規表示式

^/d/-?/d$

匹配021-52540753,0798-678901,不匹配09888-0900000、098-56787

2)電子郵件

^[^@]*@[^@]*$ (不是很精確,拋磚引玉:))

3)國內郵編

^[1-9]/d$

4)乙個精確的數字校驗

^(([1-9]([0-9]*)?(/./d+)?)|0|(0/./d+))$

匹配7,89,700,7.9,0.8,0 不匹配07,08000,89.,0.,00.

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

非負整數 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 正確格式為...