基本符號:
^ 表示匹配字串的開始位置 (例外 用在中括號中[ ] 時,可以理解為取反,表示不匹配括號中字串)
$ 表示匹配字串的結束位置
* 表示匹配 零次到多次
+ 表示匹配 一次到多次 (至少有一次)
? 表示匹配零次或一次
| 表示為或者,兩項中取一項
( ) 小括號表示匹配括號中全部字元
[ ] 中括號表示匹配括號中乙個字元 範圍描述 如[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...