常用正则

JS 正则表达式完整教程open in new window

验证相关

是否是金额(精确到分)

/^(0|([1-9]\d*))(\.\d{1,2})?$/

/(?:^[1-9]([0-9]+)?(?:\.[0-9]{1,2})?$)|(?:^(?:0){1}$)|(?:^[0-9]\.[0-9](?:[0-9])?$)/
1
2
3

是否是手机号

/^1\d{10}$/

/^1[3-9]\d{9}$/
1
2
3

是否是邮箱号

/^\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])?)*$/
1
2
3
4
5
6
7

是否是 QQ 号

;/^[1-9]{1}\d{4,11}$/
1

是否是链接地址

;/^(https|http):\/\/[A-Za-z0-9-_]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/
1

是否是身份证号码

;/^[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]$/
1

是否为 16 进制颜色

;/^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/
1

格式相关

344 格式手机号

  • 从左到右
;/(^\d{3}|\d{4}\B)/g
// 例:
'15512341234'.replace(/(^\d{3}|\d{4}\B)/g, '$1 ')
1
2
3
  • 从右到左
;/\B(?=(\d{4})+\b)/g
// 例:
'15512341234'.replace(/\B(?=(\d{4})+\b)/g, ' ')
1
2
3

隐藏手机号中间 4 位

;/(\d{3})\d{4}(\d{4})/
// 例:
'15512341234'.replace(/(\d{3})\d{4}(\d{4})/, '$1****$2')
1
2
3
上次更新: 5/9/2022, 12:45:32 PM
(adsbygoogle = window.adsbygoogle || []).push({});