記錄一些常用的正則表達式,也可以提高一下工作效率嘛
數字的正則表達式
-
數字:^[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+)?$
字符的正則表達式
-
漢字:^[\u4e00-\u9fa5]{0,}$
-
英文和數字:^[A-Za-z0-9]+$ 或 ^[A-Za-z0-9]{4,40}$
-
長度爲3-20的所有字符:^.{3,20}$
-
由26個英文字母組成的字符串:^[A-Za-z]+$
-
由26個大寫英文字母組成的字符串:^[A-Z]+$
-
由26個小寫英文字母組成的字符串:^[a-z]+$
-
由數字和26個英文字母組成的字符串:^[A-Za-z0-9]+$
-
由數字、26個英文字母或者下劃線組成的字符串:^\w+$ 或 ^\w{3,20}$
-
中文、英文、數字包括下劃線:^[\u4E00-\u9FA5A-Za-z0-9_]+$
-
中文、英文、數字但不包括下劃線等符號:^[\u4E00-\u9FA5A-Za-z0-9]+$ 或 ^[\u4E00-\u9FA5A-Za-z0-9]{2,20}$
-
禁止輸入含有~的字符:[^~\x22]+
特殊需求正則表達式
-
Email地址:^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
-
域名:[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(/.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+/.?
-
URL:[a-zA-z]+://[^\s]* 或 ^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$
-
手機號碼:
^[1][3,4,5,7,8][0-9]{9}$
-
身份證號:
15或18位身份證:^\d{15}|\d{18}$
15位身份證:^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$
18位身份證:^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{4}$
-
短身份證號碼(數字、字母x結尾):^([0-9]){7,18}(x|X)?$ 或 ^\d{8,18}|[0-9x]{8,18}|[0-9X]{8,18}?$
-
帳號是否合法(字母開頭,允許5-16字節,允許字母數字下劃線):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
-
密碼(以字母開頭,長度在6~18之間,只能包含字母、數字和下劃線):^[a-zA-Z]\w{5,17}$
-
強密碼(必須包含大小寫字母和數字的組合,不能使用特殊字符,長度在8-10之間):^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$
-
日期格式:^\d{4}-\d{1,2}-\d{1,2}
-
IP地址:\d+\.\d+\.\d+\.\d+
-
中文字符的正則表達式:[\u4e00-\u9fa5]