正则表达式搜集
常用正则页面
以 .apk 结尾
.*\.apk
匹配 url
isUrl (str_url) {
const strRegex = '(ht|f)tp(s?)\:\/\/[0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*(:(0-9)*)*(\/?)([a-zA-Z0-9\-\.\?\,\'\/\\\+&%$#_]*)?'
const re = new RegExp(strRegex)
return !re.test(str_url)
},
从 angular 扒下来的一个解析 url 的方式:
function parseUrl( value) {
const parseUrlExg = /^(?:([A-Za-z]+):)?(\/{0,3})([0-9.\-A-Za-z]+)(?::(\d+))?(?:\/([^?#]*))?(?:\?([^#]*))?(?:#(.*))?$/
const result = parseUrlExg.exec(value)
const fields = ['url', 'scheme', 'slash', 'host', 'port', 'path', 'query', 'hash']
return result.reduce((pre, cur, index) => {
const key = fields[index]
const value = cur
pre[key] = value
return pre
}, {})
}
是否含有中文字符
const reg3 = new RegExp('^[^\u4e00-\u9fa5]+$')
function checkChinese (str) {
var reg = new RegExp("([\u4E00-\u9FFF]|[\u3002\uff1b\uff0c\uff1a\u201c\u201d\uff08\uff09\u3001\uff1f\u300a\u300b\uff01\u3010\u3011\uffe5])+","g");
return reg.test(str);
}
包含中文符号
电话号码
function checkPhone(str){
if(!(/^1[3|4|5|7|8]\d{9}$/.test(str))){
alert("手机号码有误,请重填");
return false;
}
}
ps:我国电话号码真是蓬勃发展....
是否包含特殊字符
function validate(value) {
var pattern = /[`~!@#$%^&*()_+<>?:"{},.\/;'[\]]/im;
if(!value) {
return false
}
return pattern.test(value)
}
匹配电子邮箱
/* 用于邮箱验证的函数 */
function validateEmail (email) {
// 邮箱验证正则
var reg = /^[A-Za-z0-9]+([_\.][A-Za-z0-9]+)*@([A-Za-z0-9\-]+\.)+[A-Za-z]{2,6}$/;
return reg.test(email);
}
匹配身份证
^(\d{6})(\d{4})(\d{2})(\d{2})(\d{3})([0-9]|X)$
匹配 QQ
//QQ号正则,5至11位
var qqPattern = /^[1-9][0-9]{4,10}$/;
//输出 true
console.log(qqPattern.test("65974040"));
匹配微信
//微信号正则,6至20位,以字母开头,字母,数字,减号,下划线
var wxPattern = /^[a-zA-Z]([-_a-zA-Z0-9]{5,19})+$/;
//输出 true
console.log(wxPattern.test("caibaojian_com"));
车牌号
//·车牌号正则
var cPattern = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9挂学警港澳]{1}$/;
//输出 true
console.log(cPattern.test("粤B39006"));
上传文件名允许字符
var reg = new RegExp('[-_.a-zA-Z0-9\u4e00-\u9fa5\u767e\u5343\u96f6]+', 'g')