常用正则
收集开发中的一些常用正则
验证相关
是否是金额(精确到分)
js
/^(0|([1-9]\d*))(\.\d{1,2})?$/
/(?:^[1-9]([0-9]+)?(?:\.[0-9]{1,2})?$)|(?:^(?:0){1}$)|(?:^[0-9]\.[0-9](?:[0-9])?$)/
是否是手机号
js
/^1\d{10}$/
/^1[3-9]\d{9}$/
是否是邮箱号
js
/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/
/**
* 参考 MDN
* https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/Input/email#basic_validation
*/
/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/
是否是 QQ 号
js
/^[1-9]{1}\d{4,11}$/
是否是链接地址
js
/^(https|http):\/\/[A-Za-z0-9-_]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/
是否是身份证号码
js
/^[1-9]\d{5}(?:18|19|20)\d{2}(?:0[1-9]|10|11|12)(?:0[1-9]|[1-2]\d|30|31)\d{3}[\dXx]$/
是否是 16 进制颜色
js
/^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/
格式相关
344 格式手机号
- 从左到右
js
/(^\d{3}|\d{4}\B)/g
// 例:
'15512341234'.replace(/(^\d{3}|\d{4}\B)/g, '$1 ')
- 从右到左
js
/\B(?=(\d{4})+\b)/g
// 例:
'15512341234'.replace(/\B(?=(\d{4})+\b)/g, ' ')
隐藏手机号中间 4 位
js
/(\d{3})\d{4}(\d{4})/
// 例:
'15512341234'.replace(/(\d{3})\d{4}(\d{4})/, '$1****$2')