项目中用到的几个关于正则使用的例子
1.将手机号的中间四位替换为星号
var tel = "18766131540";
var reg = /^(\d{3})\d{4}(\d{4})$/;
tel = tel.replace(reg, "$1****$2");
console.log(tel);
2.手机号校验
export function validatemobile(mobile) {
var myreg = /^1[34578]\d{9}$/;
if(mobile.length==0){
return '请输入手机号码';
}else if(mobile.length!=11){
return '请输入有效的手机号码';
}else if(!myreg.test(mobile)){
return '请输入有效的手机号码';
}else{
return true;
}
}
3.名字校验
export function validateName(name) {
let myreg =/^[\u4E00-\u9FA5A-Za-z ]{0,100}$/;
name=trim(name);
if (name.length == 0){
return '请输入真实姓名';
}else if(!myreg.test(name)){
return '姓名只能由中文或英文组成';
}else{
return true;
}
}
4.身份证号校验
export function validateIdCard(name) {
let myreg =/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$|^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/;
name=trim(name);
// if (name.length == 0){
// return '请输入身份证号';
// }else if(!myreg.test(name)){
// return '请输入正确的身份证号';
// }else{
// return '';
// }
if (name.length == 18){
return '';
}else{
return '位数不对';
}
}
5.保留两位小数,如果是整数会在后面补零,如8会在8后面补两个零,即8.00
function toDecimal(x) {
var f = parseFloat(x);
if (isNaN(f)) {
return false;
}
var f = Math.round(x*100)/100;
var s = f.toString();
var rs = s.indexOf('.');
if (rs < 0) {
rs = s.length;
s += '.';
}
while (s.length <= rs + 2) {
s += '0';
}
return s;
}