正規表示式

2022-08-24 10:48:09 字數 2499 閱讀 7184

* 正規表示式:也叫規則表示式,按照一定的規則組成的乙個表示式,這個表示式的作用主要是匹配字串的

** 正規表示式的作用:匹配字串的

** 在大多數程式語言中都可以使用

** 正規表示式的組成:是由元字元或者限定符組成的乙個式子**

* 元字元:

** . 表示的是:除了\n以外的任意的乙個字元 "fdsfs238"

** 表示的是:範圍, [0-9] 表示的是0到9之間的任意的乙個數字, "789" [0-9]

* [1-7] 表示的是1到7之間的任意的乙個數字

* [a-z] 表示的是:所有的小寫的字母中的任意的乙個

* [a-z] 表示的是:所有的大寫的字母中的任意的乙個

* [a-za-z] 表示的是:所有的字母的任意的乙個

* [0-9a-za-z] 表示的是: 所有的數字或者是字母中的乙個

* 另乙個函式: 把正規表示式中元字元的意義乾掉 [.] 就是乙個.

* | 或者 [0-9]|[a-z] 表示的是要麼是乙個數字,要麼是乙個小寫的字母

* () 分組 提公升優先順序 [0-9]|([a-z])|[a-z]

* ([0-9])([1-5])([a-z]) 三組, 從最左邊開始計算

* (()(()))**

* 都是元字元,但是也可以叫限定符,下面的這些

** * 表示的是:前面的表示式出現了0次到多次

* [a-z][0-9]* 小寫字母中的任意乙個 後面是要麼是沒有數字的,要麼是多個數字的

* "fdsfs3223323" [a-z][0-9]*

** + 表示的是:前面的表示式出現了1次到多次

* [a-z][9]+ 小寫字母乙個後面最少乙個9,或者多個9

* "fesfewww9fefds"

** ? 表示的是:前面的表示式出現了0次到1次,最少是0次,最多1次 ,另乙個含義:阻止貪婪模式

* [4][a-z]? "1231234ij"

** 限定符:限定前面的表示式出現的次數

* {} 更加的明確前面的表示式出現的次數

* 表示的是前面的表示式出現了0次到多次,和 *一樣的

* 表示的是前面的表示式出現了1次到多次,和 +一樣的

* 表示的是前面的表示式出現了0次到1次,和 ?一樣的

* 表示的是前面的表示式出現了5次到10次

* 前面的表示式出現了4次

* 錯誤的*****===不能這麼寫********************

* ^ 表示的是以什麼開始,或者是取非(取反) ^[0-9] 以數字開頭

* ^[a-z] 以小寫字母開始

* [^0-9] 取反,非數字

* [^a-z] 非小寫字母

* [^0-9a-za-z_]

* $ 表示的是以什麼結束 [0-9][a-z]$ 必須以小寫字母結束

* ^[0-9][a-z] 相當於是嚴格模式 "4f"

* \d 數字中的任意乙個,

* \d 非數字中的乙個

* \s 空白符中的乙個

* \s 非空白符

* \w 非特殊符號_

* \w 特殊符號

* \b 單詞的邊界

* "what are you no sha lei"

//身份證的正規表示式

//15位或18位

//([1,9][0,9])|([1,9][0,9][0,9xx])

//簡單優化15位或18位*****>([1,9][0,9])([0,9][0,9xx])?

//經驗:1:找規律 2:不要追求完美

/** 1:座機號碼的正規表示式

* 010-67589060

* 0756-23521826

** ([0-9])[-][0-9]

* \d[-][0-9]

** 2:qq號的正規表示式 5-11位數

* [1-9][0-9]

* \d**

* 3:手機號碼的正規表示式

* 130 131 132 133 134 135 136 137 138 139

* 143 147

* 150 151 152 153 154 155 156 157 158 159

* 170 171 173 176 177

* 180 181 182 183 184 185 186 187 188 189

** ([1][358][0-9][0-9])|([1][4][37][0-9])|([1][7][01367][0-9])

* \d**

** 4:郵箱的正規表示式********************===

* [email protected]

** [0-9a-za-z_.-]+[@][0-9a-za-z_.-]+([.][a-za-z]+)

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

非負整數 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...

正規表示式 表示式

網域名稱 a za z0 9 a za z0 9 a za z0 9 a za z0 9 interneturl a za z s 或 http w w w 手機號碼 13 0 9 14 5 7 15 0 1 2 3 5 6 7 8 9 18 0 1 2 3 5 6 7 8 9 d 號碼 x x x...

Linux正規表示式 編寫正規表示式

為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...