正規表示式3

2021-08-25 01:41:40 字數 3312 閱讀 8804

1、「.」為萬用字元,表示任何乙個字元,例如:「a.c」可以匹配「anc」、「abc」、「acc」;

2、「」,在內可以指定要求匹配的字元,例如:「a[nbc]c」可以匹配「anc」、「abc」、「acc」

;但不可以匹配「ancc」,a到z可以寫成[a-z],0到9可以寫成[0-9];

3、數量限定符號,表示匹配次數(或者叫做長度)的符號:

包括:「*」——0次或者多次

「+」——1次或者多次

「?」——0次或者1次

「」——匹配n次,n為整數

「」——匹配從n到m之間的某個數的次數;n和m都是整數;

「」——匹配n到無窮次之間任意次數;

「」——匹配0到m之間任意次數;

他們放到匹配格式的後面:

例如:**號碼:024-84820482,02484820482(假設前面3或者4位,後面7或者8位,並且中間的減號可有可無)

都是符合規定的,那麼可以用如下格式來匹配:[0-9] \-? [0-9];

注意:「\」為轉義字元,因為「-」在正規表示式用有代表乙個範圍的意義,例如:前面所說的[0-9],

所以它需要轉義字元「\」進行轉義才可使用;

4、「^」為否符號,表示不想匹配的符號,例如:[^z][a-z]+可以匹配所有除「z」開頭的以外的所有字

符串(長度大於2,因為「+」表示大於等於1的次數,從第二位開始都是小寫英文本元);

如果^放到的外邊則表示以開頭的字串;^[az][a-z]+表示a或者z開頭的長度大於等於2的英文本元

串;5、「|」或運算子,例如:a[n|bc|cb]c可以匹配「abcc」,「anc」,「acbc」;

6、「$」以它前面的字元結尾的;例如:ab+$就可以被「abb」,「ab」匹配;

7、一些簡單表示方法:

\d表示[0-9];\d表示[^0-9];\w表示[a-z0-9];\w表示[^a-z0-9];\s表示[\t\n\r\f],就是空格字元包括tab

,空格等等;\s表示[^\t\n\r\f],就是非空格字元;

8、常用的匹配:

匹配中文字元: 「[\u4e00-\u9fa5]」;

匹配雙位元組字元(包括漢字在內):「[^\x00-\xff]」;

匹配空行的正規表示式:「\n[\s| ]*\r」;

匹配html標記的正規表示式:「/<(.*)>.*<\/\1>|<(.*) \/>/」;

匹配首尾空格的正規表示式:「(^\s*)|(\s*$)」;

匹配非負整數(正整數 + 0):「^\d+$」;  

匹配正整數:「^[0-9]*[1-9][0-9]*$」;

匹配非正整數(負整數 + 0):「^((-\d+)|(0+))$」;

匹配負整數:「^-[0-9]*[1-9][0-9]*$」;

匹配整數:「^-?\d+$」;

匹配非負浮點數(正浮點數 + 0):「^\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+)?))$  //匹配非正浮點數(負浮點數 + 0)

^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$  //匹配

常用正規表示式

非負整數(正整數 + 0)

[^\\d+$] 

正整數                 

[^[0-9]*[1-9][0-9]*$]   

非正整數(負整數 + 0)

[^((-\\d+)|(0+))$]        

負整數

[^-[0-9]*[1-9][0-9]*$]  

整數[^-?\\d+$]       

非負浮點數(正浮點數 + 0)

[^\\d+(\\.\\d+)?$ ]  

正浮點數

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

非正浮點數(負浮點數 + 0)

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

負浮點數

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

浮點數

[^(-?\\d+)(\\.\\d+)?$ ]  

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

[^[a-za-z]+$]  

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

[^[a-z]+$]  

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

[^[a-z]+$]  

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

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

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

[^\\w+$]  

email位址

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

url[^[a-za-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\s*)?$ ]  

匹配中文字元的正規表示式: [\u4e00-\u9fa5]

匹配雙位元組字元(包括漢字在內):[^\x00-\xff]

中國**號碼驗證

匹配形式如:0511-4405222 或者021-87888822 或者 021-44055520-555 或者 (0511)4405222

正規表示式 "((d)|d-)?d(-d)*"

電子郵件驗證

匹配形式如:[email protected]

正規表示式 "w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*"

身份證驗證

匹配形式如:15位或者18位身份證

正規表示式 "d|d"

常用數字驗證

正規表示式 

"d" n為規定長度

"d" n到m的長度範圍

非法字元驗證

匹配非法字元如:< > & / ' | 

正規表示式 [^<>&/|'\]+

日期驗證

匹配形式如:20030718,030718

範圍:1900--2099

正規表示式((((19)|(20))d)|d)[01]d[0-3]d

正規表示式3

正規表示式用於字串處理 表單驗證等場合,實用高效。本文收集了一些常用的表示式 str preg replace a 1 2 3 str 其中用了三個子模式 每個圓括號中內容為乙個子模式 第乙個是鏈結開始標籤,第二個是鏈結文字,第三個是 然後第二個引數中 1 2 3就表示這三個部分,要替換成什麼樣子還...

正規表示式 3

數量 匹配多個字元的相關格式 匹配前乙個字元出現0次或者無限次,即可有可無 示例一 coding utf 8 需求 匹配乙個字串第乙個字母為大小字元,後面都是小寫字母並且這些小寫字母可有可無 import reret re.match a z a z mm group print ret mmret...

正規表示式簡介(微軟) 3 使用正規表示式

使用正規表示式 在典型的搜尋和替換操作中,必須提供要查詢的確切文字。這種技術對於靜態文字中的簡單搜尋和替換任務可能足夠了,但是由於它缺乏靈活性,因此在搜尋動態文字時就有困難了,甚至是不可能的。使用正規表示式,就可以 1.測試字串的某個模式。例如,可以對乙個輸入字串進行測試,看在該字串是否存在乙個 號...