目录
一、常用判断
1. 手机号码 /^[1][3,4,5,7,8][0-9]{9}$/
2. 邮政编码 /[1-9]\d{5}(?!\d)/
3. 电子邮箱 /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/
4. 地理经度 /^(([1-9]\\d?)|(1[0-7]\\d))(\\.\\d{1,6})|180|0(\\.\\d{1,6})?$/
5. 地理纬度 /^(([1-8]\\d?)|([1-8]\\d))(\\.\\d{1,6})|90|0(\\.\\d{1,6})?$/
6. 经纬度(xxx.xxxx,xxxx.xxxx格式) /^[-\+]?\d+(\.\d+)\,[-\+]?\d+(\.\d+)$/
二、数字相关
1. 非负整数(正整数 / 0) / ^\d+$/ 或 /^[1-9]\d*|0$/
2. 0-100 整数 /^(?:0|[1-9][0-9]?|100)$/
3. 最多两位小数 /^[0-9]+(.[0-9]{0,2})?$/\
三、正则基础
1.修饰符
字符 | 描述 |
---|---|
g | global 全局匹配(一直匹配直到没有为止) |
i | ignoreCase 忽略大小写 |
m | multiline 多行匹配 |
2. 元字符
字符 | 描述 |
---|---|
\ | 转义字符 |
. | 除了\n(换行符)以外的任意字符 |
\d | 匹配一个0~9之间的数字 |
\D | 匹配一个非0~9之间的数字(大写与小写字母组合正好是相反含义) |
\w | 匹配一个0~9或字母或_之间的一个字符 |
\s | 匹配一个任意空白字符 |
\b | 匹配一个边界符 |
x|y | 匹配x或者y中的一个 |
[a-z] | 匹配a-z中的任意一个字符 |
[^a-z] | 匹配非a-z中的任意一个字符 |
[xyz] | 匹配x或y或z中的一个字符 |
[^xyz] | 不是x或y或z的一个字符 |
^ | 以某一个元字符开始 |
$ | 以某一个元字符结束 |
3. 量词
字符 | 描述 |
---|---|
+ | 出现一到多次 |
? | 出现零到一次 |
* | 出现零到多次 |
{n} | 出现n次 |
{n,} | 出现n到多次 |
{n,m} | 出现n到m次 |
下面是一个传送门,不久前发现的很全面的正则的总结:
https://juejin.im/post/5b62717ee51d4519873f858a 作者:ngaiwe