1.数字带小数的校验
// 数字带小数校验(没有设置必填项)
const valiNumberPass = (rule, value, callback) => {
let reg = /^[+-]?(0|([1-9]\d*))(\.\d+)?$/g;
if (value === '') {
callback()
} else if (!reg.test(value)) {
callback(new Error('请输入数字'));
} else {
callback();
}
};
2.纯数字校验
// 纯数字整数校验(没有设置必填项)
const numberPass = (rule, value, callback) => {
let reg = /^[+]{0,1}(\d+)$/g;
if (value === '') {
callback()
} if (!reg.test(value)) {
callback(new Error('请输入纯数字'));
} else {
callback();
}
};
3.禁止输入特殊字符校验
// 禁止输入特殊字符的校验
const validateInput = (rule, value, callback) => {
if (!this.checkSpecialKey(value)) {
callback(new Error("不能含有特殊字符!"));
} else {
callback();
}
};
methods: {
checkSpecialKey(str) {
var specialKey = "[`~!#$^&*()=|{}':;'\\[\\].<>/?~!#¥……&*()——|{}【】‘;:” “'。,、?]‘'";
for (var i = 0; i < str.length; i++) {
if (specialKey.indexOf(str.substr(i, 1)) != -1) {
return false;
}
}
return true;
},
}
4.地图经度维度校验(格式: 经度 , 维度)
// 校验经度和维度
const validateInput2 = (rule, value, callback) => {
let reg = /^[-+]?([1-8]?\d(\.\d{0,6})?|90(\.0{0,6})?)\s,\s[-+]?(180(\.0{0,6})?|((1[0-7]\d)|([1-9]?\d))(\.\d{0,6})?)$/;
if (!reg.test(value)) {
callback(new Error('格式不对'));
} else {
callback();
}
};
5.手机号的校验
// 校验手机号
const validateInput3 = (rule, value, callback) => {
let reg = /^1\d{10}$/;
if (!reg.test(value)) {
callback(new Error('请输入正确的电话号码'));
} else {
callback();
}
};
之一个项目中用到的几个正则分享下,希望可以帮助到各位