收集的正規表示式

2021-05-02 17:19:28 字數 3862 閱讀 9536

正規表示式是個很不錯的東西,可以讓你使用指定的模式去分析字串,當年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

匹配ip

/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 ...