常用的正規表示式

2022-06-26 05:51:08 字數 4580 閱讀 7621

基本符號:

^  表示匹配字串的開始位置  (例外  用在中括號中[ ] 時,可以理解為取反,表示不匹配括號中字串)

$  表示匹配字串的結束位置

*  表示匹配 零次到多次

+  表示匹配 一次到多次 (至少有一次)

?  表示匹配零次或一次

|  表示為或者,兩項中取一項

(  ) 小括號表示匹配括號中全部字元

[  ] 中括號表示匹配括號中乙個字元 範圍描述 如[0-9 a-z a-z]

大括號用於限定匹配次數  如 表示匹配n個字元  表示至少匹配n個字元  表示至少n,最多m

\  轉義字元 如上基本符號匹配都需要轉義字元   如 \*  表示匹配*號

\w 表示英文本母和數字  \w  非字母和數字

\d  表示數字   \d  非數字

\s    匹配任何空白字元,包括空格、製表符、換頁符等等。等價於[\f\v\r\t\v]

\s    匹配任何空白字元。等價於[^\f\v\r\t\v]。

\f     匹配乙個換頁符。等價於\x0c和\cl。

\n    匹配乙個換行符。等價於\x0d和\cj。

\r     匹配乙個回車符。等價於\x0d和\cm。

.  匹配除換行符\n之外的任何單個字元。

* 匹配前面的子表示式0次或多次。例如,zo* 能匹配 "z" 以及 "zoo"。* 等價於

+ 匹配前面的子表示式1次或多次。例如,'zo+' 能匹配 "zo" 以及 "zoo",但不能匹配 "z"。+ 等價於

? 匹配前面的子表示式0次或1次。例如,"do(es)?" 可以匹配 "do" 或 "does" 中的"do" 。? 等價於 。

n 是乙個非負整數。匹配確定的 n 次。例如,'o' 不能匹配 "bob" 中的 'o',但是能匹配 "food" 中的兩個 o。

n 是乙個非負整數。至少匹配n 次。例如,'o' 不能匹配 "bob" 中的 'o',但能匹配 "foooood" 中的所有 o。'o' 等價於 'o+'。'o' 則等價於 'o*'。

m 和 n 均為非負整數,其中n <= m。最少匹配 n 次且最多匹配 m 次。例如,"o" 將匹配 "fooooood" 中的前三個 o。'o' 等價於 'o?'。請注意在逗號和兩個數之間不能有空格

匹配規則

[a-z] 匹配所有小寫字母

[a-z] 匹配所有大寫字母

[a-za-z] 匹配所有字母

[0-9] 匹配所有數字

[0-9\.\-] 匹配所有數字、句號、減號

[ \f\r\t\n] 匹配所有白字元

常用的正規表示式

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

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

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

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

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

匹配ip位址的正規表示式:/(\d+)\.(\d+)\.(\d+)\.(\d+)/g //

匹配email位址的正規表示式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

匹配**url的正規表示式:http://(/

[\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?

sql語句:^(select|drop|delete|create|update|insert).*$

1、非負整數:^\d+$ 

2、正整數:^[0-9]*[1-9][0-9]*$ 

3、非正整數:^((-\d+)|(0+))$ 

4、負整數:^-[0-9]*[1-9][0-9]*$ 

5、整數:^-?\d+$ 

6、非負浮點數:^\d+(\.\d+)?$ 

7、正浮點數:^((0-9)+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$ 

8、非正浮點數:^((-\d+\.\d+)?)|(0+(\.0+)?))$ 

9、負浮點數:^(-((正浮點數正則式)))$ 

10、英文本串:^[a-za-z]+$ 

11、英文大寫串:^[a-z]+$ 

12、英文小寫串:^[a-z]+$ 

13、英文本元數字串:^[a-za-z0-9]+$ 

14、英數字加下劃線串:^\w+$ 

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

或:^http:\/\/[a-za-z0-9]+\.[a-za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$

18、中文:^[\u0391-\uffe5]+$

19、**號碼:^((\d2,3)|(\d\-))?(0\d2,3|0\d-)?[1-9]\d(\-\d)?$

20、手機號碼:

var replaces = /(^1[3,4,5,7,8,9]\d$)|(^((\d)|(\d|\d)-(\d)|(\d|\d)-(\d)-(\d|\d|\d|\d)|(\d)-(\d|\d|\d|\d))$)/;

21、雙位元組字元(包括漢字在內):^\x00-\xff

22、匹配首尾空格:(^\s*)|(\s*$)(像vbscript那樣的trim函式)

23、匹配html標記:<(.*)>.*<\/\1>|<(.*) \/> 

24、匹配空行:\n[\s| ]*\r

29、提取資訊中的中國手機號碼:(86)*0*13\d

30、提取資訊中的中國固定**號碼:(\d3,4|\d-|\s)?\d

31、提取資訊中的中國**號碼(包括移動和固定**):(\d3,4|\d-|\s)?\d

33、提取資訊中的浮點數(即小數):(-?\d*)\.?\d+

34、提取資訊中的任何數字 :(-?\d*)(\.\d+)? 

35、ip:(\d+)\.(\d+)\.(\d+)\.(\d+)

36、**區號:/^0\d$/

38、帳號(字母開頭,允許5-16位元組,允許字母數字下劃線):^[a-za-z][a-za-z0-9_]$

39、中文、英文、數字及下劃線:^[\u4e00-\u9fa5_a-za-z0-9]+$

【手機號】

/^1((3[d])|(4[5,6,9])|(5[0-3,5-9])|(6[5-7])|(7[0-8])|(8[1-3,5-8])|(9[1,8,9]))d$/

【大寫字母】

/^[a-z]+$/

【日期,如: 2000-01-01】

/^d(-)dd$/

【email位址】

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

【國內座機**,如: 0341-86091234】

/d-d|d-d/

【身份證號(15位、18位數字),最後一位是校驗位,可能為數字或字元x】

/(^d$)|(^d$)|(^d(d|x|x)$)/

【賬號是否合法(字母開頭,允許5-16位元組,允許字母數字下劃線組合】

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

【只包含中文】

/^[\u4e00-\u9fa5]/

【是否小數】

/^d+.d+$/

【賬號是否合法(字母開頭,允許5-16位元組,允許字母數字下劃線組合】

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

【是否**格式(手機和座機)】

/^((0d-d)|(1[345789]d))$/

【是否8位純數字】

/^[0-9]$/

【是否html標籤】

【是否qq號格式正確】

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

【是否由數字和字母組成】

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

【是否小寫字母組成】

/^[a-z]+$/

【密碼強度正則,最少6位,包括至少1個大寫字母,1個小寫字母,1個數字,1個特殊字元】

/^.*(?=.)(?=.*d)(?=.*[a-z])(?=.*[a-z])(?=.*[!@#$%^&*? ]).*$/

【使用者名稱正則,4到16位(字母,數字,下劃線,減號)】

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

【ipv4位址正則】

/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).)(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/

【16進製制顏色】

/^#?([a-fa-f0-9]|[a-fa-f0-9])$/

/^[a-za-z]([-_a-za-z0-9])+$/

/^(0[1-7]|1[0-356]|2[0-7]|3[0-6]|4[0-7]|5[1-7]|6[1-7]|7[0-5]|8[013-6])d$/

【只包含中文和數字】

/^(([\u4e00-\u9fa5])|(d))+$

【非字母】

/[^a-za-z]/

正規表示式 常用正規表示式

一 校驗數字的表示式 1 數字 0 9 2 n位的數字 d 3 至少n位的數字 d 4 m n位的數字 d 5 零和非零開頭的數字 0 1 9 0 9 6 非零開頭的最多帶兩位小數的數字 1 9 0 9 0 9 7 帶1 2位小數的正數或負數 d d 8 正數 負數 和小數 d d 9 有兩位小數的...

正規表示式 常用正規表示式

網域名稱 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 4 5 6 7 8 9 18 0 1 2 3 5 6 7 8 9 d 或者 1 3...

正規表示式 開發常用的正規表示式

正規表示式是一種用來進行文字匹配的工具,其語法優美簡潔。在開發中,查詢 對比以及匹配字串是家常便飯的業務,通過正規表示式我們將這些業務描述成某些需求規則,來讓我們的 更美觀 實用。例如我們要驗證使用者輸入的密碼長度是否滿足6 18位的長度,新手最常見的驗證方式是判斷輸入的密碼長度 return te...