// 校验
export function regCheck (val: any, type: string) {
// 10位数字校验(月结卡号)
if (type === 'cardnum') {
const reg = /^\d{10}$/;
return reg.test(val);
}
// 11位手机号校验
if (type === 'phone') {
const reg = /^[1][3,4,5,6,7,8,9][0-9]{9}$/;
return reg.test(val);
}
// 电子邮箱校验
if (type === 'email') {
const reg = /^([A-Za-z0-9_\-.])+@([A-Za-z0-9_\-.])+\.([A-Za-z]{2,5})$/;
return reg.test(val);
}
// 数字及两位小数校验
if (type === 'number') {
const reg = /^-*\d+(\.\d{1,2})?$/;
return reg.test(val);
}
// 数字和字母的组合---(限20位)--(例如:客户编码,合同编码)
if (type === 'code') {
const reg = /^[A-Za-z0-9]{1,20}$/;
return reg.test(val);
}
// 数字和字母的组合---(限50位)--(例如:货主代码)
if (type === 'code_two') {
const reg = /^[A-Za-z0-9]{1,50}$/;
return reg.test(val);
}
// 长度1-50,允许数字和字母以及特殊字符输入,-、. 、@、$、!、%、*、#_、~、?、&、^
if (type === 'code_three') {
const reg = /^(?=.*[\da-zA-Z])[\da-zA-Z-.@$!%*#_~?&^]{1,50}$/;
return reg.test(val);
}
// 纯数字---(例如:商机编码)
if (type === 'purenum') {
const reg = /^[0-9]*$/;
return reg.test(val);
}
// 6-12为大写字母---(例如:客户名称缩写)
if (type === 'uppercase') {
const reg = /^[A-Z]{6,12}$/;
return reg.test(val);
}
// 限两位小数,整数位最多11位---(例如:金额、月订单量)
if (type === 'datalimit') {
const reg = /^[1-9]\d{1,10}(\.\d{1,2})?$|^0(\.\d{1,2})?$/;
return reg.test(val);
}
// 不限位数,正确的数字---(例如:应付金额、预估月订单量(万单))
if (type === 'numberinfinite') {
const reg = /^(([1-9][0-9]*)|(([0]\.\d{1,}|[1-9][0-9]*\.\d{1,})))$|^0(\.\d{1,})?$/;
// const reg = /^[-]?(([1-9][0-9]*)|[-]?(([0]\.\d{1,}|[-]?[1-9][0-9]*\.\d{1,})))$|^[-]?0(\.\d{1,})?$/; 能为负数
return reg.test(val);
}
return true;
}
06-07
3609
01-17
416
07-08
3584