正则表达式
常用的正则表达式
一、校验数字
1、数字:^[0-9]*$
2、n位的数字:^\d{n}$
3、至少n位的数字:^\d{n,}$
4、m-n位的数字:^\d{m,n}$
5、带1-2位小数的正数或负数:^(-)?\d+(\.\d{1,2})?$
6、正数、负数或小数:^(-)?\d+(\.\d+)?$
7、有两位小数的正实数:^[0-9]+(.[0-9]{2})?$
8、非零的正整数:^[1-9]\d*$ 或 ^[1-9][0-9]*$
9、非零的正整数:^-[1-9]\d*$ 或 ^-[1-9][0-9]*$
10、非负整数:^[1-9]\d*|0$
11、非正整数:^-[1-9]\d*|0$
12、非负浮点数:^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$
13、非正浮点数:^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$
14、浮点数:^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$
二、校验字符
1、汉字:^[\u4e00-\u9fa5]+$
2、Unicode编码中的汉字范围:^[\u2E80-\u9FFF]+$
3、 英文和数字:^[A-Za-z0-9]+$
4、长度为5-20的所有字符:^.{5,20}$
5、由26个英文字母组成的字符串:^[A-Za-z]+$
6、由26个大写英文字母组成的字符串:^[A-Z]+$
7、由26个小写英文字母组成的字符串:^[a-z]+$
8、由数字、26个英文字母或者下划线组成的字符串:^\w+$
9、中文、英文、数字包括下划线:^[\u4E00-\u9FA5A-Za-z0-9_]+$
三、校验其他
1、邮箱地址:^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
2、中国大陆固定电话号码:^(\d{4}-|\d{3}-)?(\d{8}|\d{7}$
3、中国大陆手机号码:^1\d{10}$
4、中国大陆邮编:^[1-9]\d{5}$
5、中国大陆身份证(15位或18位)^\d{15}(\d\d[0-9xX])?$
6、腾讯QQ号:^[1-9][0-9]{4,}$
7、域名:^(https?://)?([a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,6}(/)?$
8、IP地址(ipv4):^((25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))$
9、URL:^((ht|f)tps?)://[\w\-]+(\.[\w\-]+)+([\w\-\.,@?^=%&:\/~\+#]*[\w\-\@?^=%&\/~\+#])?$