常用的几个正则表达式

1、手机或座机号码验证

const checkPhone = (rule, value, callback) => {
    if(!(/^[1][3,4,5,6,7,8,9][0-9]{9}$/.test(value))&&!(/^([0-9]{3,4}-)?[0-9]{7,8}$/.test(value))){
      callback(new Error('手机号码有误'))
    } else {
      callback()
    }
}

2、网址验证

// 1.
let strRegex = /((([A-Za-z]{3,9}:(?:\/\/)?)(?:[\-;:&=\+\$,\w]+@)?[A-Za-z0-9\.\-]+|(?:www\.|[\-;:&=\+\$,\w]+@)[A-Za-z0-9\.\-]+)((?:\/[\+~%\/\.\w\-_]*)?\??(?:[\-\+=&;%@\.\w_]*)#?(?:[\.\! \/ \\\w]*))?)/g;
if(!strRegex.test(item.url)){
    this.$message(item.name+' 没有输入正确的网址')
}

// 2.
var urlP= /^((https?|ftp|file):\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/;

3、匹配日期,如 yyyy-mm-dd 格式

var date = /^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$/;

4、验证日期时间格式为yyyy-mm-dd hh:mm:ss

if (!/^((([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))-02-29))\s([0-1][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$/.test(value)) {
    return '时间有误'
} else {
    return ''
}

5、匹配 16 进制颜色值

var color = /#([0-9a-fA-F]{6}|[0-9a-fA-F]{3})/g;

6、Email正则

var email = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;

7、身份证号(18位)正则

var cP = /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/;

8、车牌号正则

var cPattern = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9挂学警港澳]{1}$/;

9、强密码(必须包含大小写字母和数字的组合,不能使用特殊字符,长度在8-10之间)

var pwd = /^(?=.\d)(?=.[a-z])(?=.[A-Z]).{8,10}$/
posted @ 2021-04-09 11:39  陈山豆  阅读(92)  评论(0编辑  收藏  举报