收集的正規表示式

2021-08-30 04:52:43 字數 3105 閱讀 3552

正規表示式是個很不錯的東西,可以讓你使用指定的模式去分析字串,當年perl通過提供了類似正規表示式的功能後來獨步武林,好不風光(不過現在主流程式語言都提供了正規表示式功能),不過它好像看起來比較古怪而且複雜,而且要記住那些操作符好像比較困難,所以從網上蒐集了並整理了一下,方便自己也方便你,是吧!:

. (匹配任何單個字元。例如正規表示式r.t匹配這些字串:rat、rut、r t,但是不匹配root) $

(匹配行結束符。例如正規表示式weasel$ 能夠匹配字串"he's a weasel"的末尾,但是不能匹配字串"they are a bunch of weasels."。) ^

(匹配一行的開始。例如正規表示式^when in能夠匹配字串"when in the course of human events"的開始,但是不能匹配"what and when in the"。) *

(匹配0或多個正好在它之前的那個字元。例如正規表示式.*意味著能夠匹配任意數量的任何字元。) \ 

(這是引用符,用來將這裡列出的這些元字元當作普通的字元來進行匹配。例如正規表示式\$被用來匹配美元符號,而不是行尾,類似的,正規表示式\.用來匹配點字元,而不是任何字元的萬用字元)

[ ] [c1-c2] [^c1-c2] 

( 匹配括號中的任何乙個字元。例如正規表示式r[aou]t匹配rat、rot和rut,但是不匹配ret。可以在括號中使用連字元-來指定字元的區間,例如正規表示式[0-9]可以匹配任何數字字元;還可以制定多個區間,例如正規表示式[a-za-z]可以匹配任何大小寫字母。另乙個重要的用法是「排除」,要想匹配除了指定區間之外的字元——也就是所謂的補集——在左邊的括號和第乙個字元之間使用^字元,例如正規表示式[^269a-z] 將匹配除了2、6、9和所有大寫字母之外的任何字元。)

\< \>

(匹配詞(word)的開始(\<)和結束(\>)。例如正規表示式\能夠匹配字串"for the wise"中的"the",但是不能匹配字串"otherwise"中的"the"。注意:這個元字元不是所有的軟體都支援的。)

\( \)

(將 \( 和 \) 之間的表示式定義為「組」(group),並且將匹配這個表示式的字元儲存到乙個臨時區域(乙個正規表示式中最多可以儲存9個),它們可以用 到 的符號來引用。) | 

(將兩個匹配條件進行邏輯「或」(or)運算。例如正規表示式(him|her) 匹配"it belongs to him"和"it belongs to her",但是不能匹配"it belongs to them."。注意:這個元字元不是所有的軟體都支援的。) +

(匹配1或多個正好在它之前的那個字元。例如正規表示式9+匹配9、99、999等。注意:這個元字元不是所有的軟體都支援的。) ?

(匹配0或1個正好在它之前的那個字元。注意:這個元字元不是所有的軟體都支援的。)

\  \ 

(匹配指定數目的字元,這些字元是在它之前的表示式定義的。例如正規表示式a[0-9]\ 能夠匹配字元"a"後面跟著正好3個數字字元的串,例如a123、a348等,但是不匹配a1234。而正規表示式[0-9]\ 匹配連續的任意4個、5個或者6個數字字元。注意:這個元字元不是所有的軟體都支援的。)

匹配中文字元的正規表示式: 

[\u4e00-\u9fa5]

匹配雙位元組字元(包括漢字在內):

[^\x00-\xff] 

(乙個雙位元組字元長度計2,ascii字元計1)

匹配空白行的正規表示式:

\n\s*\r

匹配手機號碼:

^(1[358][0-9])[0-9]$

匹配html標記的正規表示式:

<(\s*?)[^>]*>.*?|<.*? />

(也僅僅能匹配部分)

匹配首尾空白字元的正規表示式:

^\s*|\s*$

匹配email位址的正規表示式:

\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

匹配**url的正規表示式:

[a-za-z]+://[^\s]*

匹配帳號是否合法(字母開頭,允許5-16位元組,允許字母數字下劃線):

^[a-za-z][a-za-z0-9_]$

匹配國內**號碼:

\d-\d|\d-\d

[1-9][0-9]

[1-9]\d(?!\d)

匹配身份證:

\d|\d

\d+\.\d+\.\d+\.\d+

匹配特定數字:

^[1-9]\d*$

//匹配正整數

^-[1-9]\d*$

//匹配負整數

^-?[1-9]\d*$

//匹配整數

^[1-9]\d*|0$

//匹配非負整數(正整數 + 0)

^-[1-9]\d*|0$

//匹配非正整數(負整數 + 0)

^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$

//匹配正浮點數

^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$ 

//匹配負浮點數

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

//匹配浮點數

^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$ 

//匹配非負浮點數(正浮點數 + 0)

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

//匹配非正浮點數(負浮點數 + 0)

匹配特定字串:

^[a-za-z]+$

//匹配由26個英文本母組成的字串

^[a-z]+$ 

//匹配由26個英文本母的大寫組成的字串

^[a-z]+$

//匹配由26個英文本母的小寫組成的字串

^[a-za-z0-9]+$ 

//匹配由數字和26個英文本母組成的字串

^\w+$ 

//匹配由數字、26個英文本母或者下劃線組成的字串

測試方法:               

string mailurl ="

^[1-9]\\d*$";

system.out.println(pattern.matches(mailurl, 

"1213

"));

正規表示式收集

1.驗證使用者名稱和密碼 a za z w 正確格式 a z a z 0 9 組成,並且第乙個字必須為字母6 16位 2.驗證 號碼 d d 正確格式 x x xx 3.驗證身份證號 15位或18位數字 d d 5.只能輸入由數字和26個英文本母組成的字串 a za z0 9 6.整數或者小數 0 ...

正規表示式 收集

匹配中文字元的正規表示式 u4e00 u9fa5 匹配雙位元組字元 包括漢字在內 x00 xff 匹配空白行的正規表示式 n s r 匹配html標記的正規表示式 s 匹配首尾空白字元的正規表示式 s s 匹配email位址的正規表示式 w w w w w w 匹配 url的正規表示式 a za z...

正規表示式收集

正規表示式用於字串處理 表單驗證等場合,實用高效,movable type的搜尋功能中也可以使用,以遠高效於簡單邏輯關係的關鍵字快速定位到站點內的某一文章。下面是 drl的兄弟整理了一些常用的表示式,需要用之時查閱一時,強勝於啥都需要時才另外開始想。匹配中文字元的正規表示式 u4e00 u9fa5 ...