正則表達式
一些經常使用的正則表達式
1、校驗數字的表達式
- 數字: ^[0-9]*$
- n 位數字: ^\d{n}$
- 至少 n 位數字: ^\d{n,}$
- m-n 位數字: ^\d{m,n}$
- 零和非零開頭的數字: ^(0|[1-9][0-9]*)&
- 非零開頭且最多帶兩位小數數字: ^([1-9][0-9]*)+(.([0-9]{1,2})?$
- 帶 1-2 位小數的正數或負數: ^(-)?\d+(.\d{1,2})$
- 正數、負數、和小數: ^(\-|\+)?d+(.d+)?$
- 有兩位小數的正實數: ^d+(.[0-9]{2})?$
- 有 1~3 位小數的正實數: ^d+(.[0-9]{1,3})?$
- 非零的正整數: ^[1-9]d*$
- 非負整數: ^d+$
- 非正整數: ^-[1-9]d*$
- 非負浮點數: ^d+(.d+)?$
- 非正浮點數: ^((-d+(.d+)?)|(0+(.0+)?))$
- 正浮點數: ^[1-9]d.d|0.d[1-9]d$
- 負浮點數: ^-([1-9]d.d|0.d[1-9]d)$
- 浮點數: ^(-?d+)(.d+)?$
2、校驗字符的表達式
- 漢字: ^[u4e00-u9fa5]+$
- 英文和數字: ^[0-9a-zA-Z]+$
- 長度爲 3-20 的全部字符: ^.{3,20}$
- 由 26 個英文字母組成的字符串: ^[a-zA-Z]+$
- 由 26 個大寫英文字母組成的字符串: ^[A-Z]+$
- 由 26 個小寫英文字母組成的字符串: ^[a-z]+$
- 由數字和 26 個英文字母組成的字符串: ^[a-zA-Z0-9]+$
- 由數字、26 個英文字母或者下劃線組成的字符串: ^w+$
- 中文、英文、數字包括下劃線: ^[u4E00-u9FA5a-zA-z0-9_]+$
- 中文、英文、數字但不包括下劃線等符號: ^[u4E00-u9FA5a-zA-Z0-9]+$
- 能夠輸入含有 ^%&',;=?$" 等字符: [^%&',;=?$x22]+
- 禁止輸入含有 ~ 的字符: [^~x22]+
3、特殊需求表達式
- Email地址: ^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$
- 域名: a-zA-Z0-9{0,62}(/.a-zA-Z0-9{0,62})+/.?
- url: [a-zA-z]+://[^s]*
- 手機號碼: 1d{10}
- 國內電話號碼: d{3}-d{8}|d{4}-d{7}
- 身份證號(15位、18位數字),最後一位是校驗位,可能爲數字或字符X: (^d{15}$)|(^d{18}$)|(^d{17}(d|X|x)$)
- 賬號是否合法(字母開頭,容許5-16字節,容許字母數字下劃線): ^a-zA-Z{4,15}$
- 密碼(以字母開頭,長度在6~18之間,只能包含字母、數字和下劃線): ^[a-zA-Z]w{5,17}$
- 強密碼(必須都含有數字/大寫字母/小寫字母/標點符號,8位以上): (?=^.{8,}$)(?=.*d)(?=.*W+)(?=.*[A-Z])(?=.*[a-z])(?!.*n).*$
- QQ號:[1-9]d{4,}
歡迎關注本站公眾號,獲取更多信息