VUE表單自定義方法使用與實現
表單驗證處調用phoneVerify自定義方法。
rules: {
phone: [
{required: true, message: '請輸入電話', trigger: 'blur'},
{ validator: phoneVerify, trigger: 'blur' }
],
}
phoneVerify自定義方法正則使用。
//手機號驗證
var phoneVerify = (rule, value, callback) => {
if(value){
var reg =/^((0\d{2,3}-\d{7,8})|(1[3584]\d{9}))$/;
if(!reg.test(value)){
callback(new Error('請輸入正確的手機號或者座機號格式'));
}
callback();
}
};
常用正則表達式
手機號
var reg=/^1[3456789]\d{9}$/;
固話或手機:
var reg =/^((0\d{2,3}-\d{7,8})|(1[3584]\d{9}))$/;
郵箱
var reg=/^[A-Za-z0-9\u4e00-\u9fa5]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/;
微信號
var reg= /^[a-zA-Z][a-zA-Z0-9_-]{5,19}$/;
公司組織機構代碼
reg= /^[A-Z0-9]{8}-[A-Z0-9]$|^[A-Z0-9]{8}-[A-Z0-9]-[0-9]{2}$/;
公司組織機構代碼
reg= /^[A-Z0-9]{8}-[A-Z0-9]$|^[A-Z0-9]{8}-[A-Z0-9]-[0-9]{2}$/;
正數(最多兩位小數)
reg = /^(([1-9]\d*(\.\d{1,2})?)|(0\.\d{1,2}))$/;
域名
reg = /[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(/.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+/.?/;
身份證號(15位、18位數字):
reg = /^\d{15}|\d{18}$/;
短身份證號碼(數字、字母x結尾):
reg = /^([0-9]){7,18}(x|X)?$ 或 ^\d{8,18}|[0-9x]{8,18}|[0-9X]{8,18}?$/;
日期格式:
reg = /^\d{4}-\d{1,2}-\d{1,2}/;
一年的12個月(01~09和1~12):
reg = /^(0?[1-9]|1[0-2])$/;
一個月的31天(01~09和1~31):
reg = /^((0?[1-9])|((1|2)[0-9])|30|31)$/;