1.输入框整数保留9位小数点保留6位
<el-form-item label="最大重量(kg)" prop="whPMaxWeight">
<el-input v-model.number="batchDetail.whPMaxWeight" type="number"
style="width: 100%" show-word-limit clearable
placeholder="请输入" />
</el-form-item>
const validatePass = (rule, value, callback) => {
var reg = /^(\d{0,9})(\.(\d{0,6}))?$/g;
if(!reg.test(value)){
callback(new Error("请输入整数9位小数6位的数值"));
} else {
callback();
}
};
const rules = {
whPMaxWeight:[{ validator:validatePass, trigger: "blur"}],
};
2.小数点不能超过两位并是正数
const low = (rule, value, callback, source, options) => {
if (
value !== "" &&
!(/^\d+(\.\d{1,2})?$/.test(value) || /^\d$/.test(value))
) {
callback(new Error("小数点不能超过两位并是正数"));
} else {
callback();
}
};
3.只能输入字母
var validateText = (rule, value, callback) => {
if (value !== "" && /[^a-zA-Z]/g.test(value)) {
callback(new Error("请输入字母"));
} else {
callback();
}
};
oninput="value=value.replace(/[^0-9]/g,'');if(String(value)==='0'){value=1}"
3.手机号
const validatephone = (rule, value, callback) => {
var reg = /^1[3456789]\d{9}$/;
if(!reg.test(value)){
callback(new Error("请输入正确的手机号"));
} else {
callback();
}
};
4.邮箱校验
// 邮箱校验
export function validateEmail(rule, value, callback) {
if (value === "") {
callback();
} else if (
!/^[A-Za-z0-9\u4e00-\u9fa5]+@[a-zA-Z0-9_-]+(.[a-zA-Z0-9_-]+)+$/.test(value)
) {
callback(new Error("邮箱格式错误"));
} else {
callback();
}
}
5.校验正整数
// 校验正整数
export function validateLimit(rule, value, callback) {
const reg = /(^[1-9]\d*$)/;
if (!value) {
callback(new Error("请输入"));
} else if (!reg.test(value) || value <= 0) {
callback(new Error("请输入正整数"));
} else {
callback();
}
}
6.身份证号校验
// 身份证号校验
export function validateIdCard(rule, value, callback) {
if (value === "") {
callback(new Error("身份证号不能为空"));
} else if (!/^[1-9]\d{5}(18|19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/.test(value)) {
callback(new Error("身份证号格式错误"));
} else {
callback();
}
}
7.验证2~16为范围内的字符
// 验证2~16为范围内的字符
export const validateAcount = (rule, value, callback) => {
if (!value) {
callback(new Error("请输入"));
} else if (!/[a-zA-Z0-9\u4e00-\u9fa5]{2,16}$/.test(value)) {
callback(new Error(`请输入长度2-16的字符`));
} else {
callback();
}
};
8.验证数字位数范围4-6位
// 验证数字位数范围4-6位
export const validateTwoInteger = (rule, value, callback) => {
if (!value) {
callback(new Error("请输入"));
} else if (value.toString().length < 4 || value.toString().length > 6) {
callback(new Error(`请输入长度4-6的字符`));
} else {
callback();
}
};
9.电话号码星号
setPhone() {
return this.form.supplier.telephone.replace(
/^(\d{3})\d{4}(\d+)/,
'$1****$2'
);
}
10.邮箱
export function validateEmail(email) {
const regex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
return regex.test(email);
}
11.电话
export function validateMobile(mobile) {
const regex = /^1[3456789]\d{9}$/;
return regex.test(mobile);
}
12.空格换行中文逗号等转换英文逗号
export function chineseChar2englishChar(chineseChar){
// 将单引号‘’都转换成',
let str=chineseChar.replace(/(\n)|(\s)|(\t)|(\')|(')|(,)/g,',')
str=str.replace(/。/g,",");
return str;
}
13.截取url里的token
// 示例 URL
var url = "https://example.com/api?token=abc123";
// 使用正则表达式提取 Token
var regex = /[?&]token=([^&#]+)/; // 匹配 ? 或 & 后面跟 token= 开头的部分
var match = url.match(regex);
if (match) {
var token = decodeURIComponent(match[1]); // 对 URI 进行解码
console.log("Token:", token);
} else {
console.log("未找到 Token");
}
14.密码必须包含数字、字母、特殊符号且大于8位校验
export function validatePassword(password){
const regex = /^(?=.*\d)(?=.*[a-zA-Z])(?=.*[~!@#$%^&*])[\da-zA-Z~!@#$%^&*]{8,}$/
return regex.test(password);
}
##电话号码转星号
judgeCard(val) {
if (!val) return ''
let reg = /^(.{3}).*(.{2})$/
return val.replace(reg, '$1*************$2')
},