1、 自定义邮箱规则
const regEmail = /^\w+@\w+(\.\w+)+$/
regEmail.test(value) // 为true合法,否则不合法
2、自定义手机号规则
const regMobile = /^1[34578]\d{9}$/
regMobile.test(value)为true合法,否则不合法
3、分数校验
const regGrade = /^(([0-9][0-9]*)|([0-9][0-9]*\.\d{1}))$/;
regGrade.test(value)为true合法,否则不合法
4、js 金额用,隔开(千分位加逗号)
// 例如num = 100222123为 00,222.123
num.toString().replace(/(\d)(?=(?:\d{3})+$)/g, '$1,');
5、正整数
<el-input v-model="iptValue" placeholder="请输入" @keyup.native="iptChange"></el-input>
// 这两句都行
iptChange () {
let reg = /^[1-9]\d*$/g
if (!reg.test(this.iptValue)) {
this.iptValue = this.iptValue.replace(/[^0-9]/ig,"");// 如果输入的不是数字,会直接清除
//this.iptValue = this.iptValue.replace(/[^0-9]/g,'');// 如果输入的不是数字,会直接清除
}
}
6、输入大于等于0的数 小数点为6位
<el-input
v-model.trim="basicInfo.acceptReplyMoney"
placeholder="请输入"
@keyup.native="iptValueKeyup(basicInfo, 'acceptReplyMoney', 6)"
></el-input>
function iptValueKeyup (object, prop, interAmount) {
// 首位为0 后面紧挨着输入一个整数把首位0去掉
if (object[prop].length === 2 && object[prop][0] === '0' && object[prop].indexOf('.') === -1) {
object[prop] = object[prop].substr(1)
}
object[prop] = object[prop].replace(/^\D*([0-9]\d*\.?\d{0,6})?.*$/, '$1')
}
7、只能输入中文
<el-input
v-model="report.buildUnitName"
@input="modifyBuildUnitName() "
></el-input>
modifyBuildUnitName () {
this.report.buildUnitName = this.report.buildUnitName.replace(/[^\u4e00-\u9fa5]+$/g, '')
}