正則表達式

一些經常使用的正則表達式

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,}
相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息