【vue 项目】表单正则表达式校验1-32位,中文、英文、数字及特殊字符_-,必须以中文或英文字符开头等

验证内容

(1)1-32位,中文、英文、数字及特殊字符_-,必须以中文或英文字符开头
(2)1-32位,中文、英文、数字及特殊字符_-,必须以中文、英文、数字开头

data() {
    
    
    // 表单自定义校验
    const validNameType = (rule, value, callback) => {
    
    
      var regex = new RegExp('^([\u4E00-\uFA29]|[\uE7C7-\uE7F3]|[a-zA-Z])(([\u4E00-\uFA29]|[\uE7C7-\uE7F3]|[-_a-zA-Z0-9]){
    
    0,31})$')
      if (value === '') {
    
    
        callback(new Error('请输入内容'))
      } else if (!regex.test(value)) {
    
    
        callback(new Error('只支持以中文或英文开头,由中文、英文、数字及特殊字符_-组成,1-32位'))
      } else {
    
    
        callback()
      }
    }
    const validmodelType = (rule, value, callback) => {
    
    
      var regex = new RegExp('^([\u4E00-\uFA29]|[\uE7C7-\uE7F3]|[A-Za-z0-9])(([\u4E00-\uFA29]|[\uE7C7-\uE7F3]|[-_a-zA-Z0-9]){
    
    0,31})$')
      if (value === '') {
    
    
        callback(new Error('请输入内容'))
      } else if (!regex.test(value)) {
    
    
        callback(new Error('只支持以中文、英文或数字开头,由中文、英文、数字及特殊字符_-组成,1-32位'))
      } else {
    
    
        callback()
      }
    }
    return {
    
    
    	rules: {
    
    
        	productName: [
          		{
    
     required: true, validator: validNameType, trigger: 'blur' }
        	],
        	model: [
          		{
    
     required: false, validator: validmodelType, trigger: 'blur' }
        	]
        }
    }
  }

校验内容

(1)邮箱
(2)手机号
(3)身份证号

return {
    
    
    rules: {
    
    
        userEmail: [
          {
    
    
            pattern: /^[a-zA-Z0-9]+([-_.][a-zA-Z0-9]+)*@[a-zA-Z0-9]+([-_.][a-zA-Z0-9]+)*\.[a-z]{
    
    2,}$/,
            message: '请输入正确格式的邮箱',
            trigger: 'blur'
          }
        ],
        userPhone: [
          {
    
     required: true, message: '手机号码不能为空', trigger: 'blur' },
          {
    
    
            pattern: /^1[3|4|5|6|7|8|9][0-9]\d{
    
    8}$/,
            message: '请输入正确格式的手机号码',
            trigger: 'blur'
          }
        ],
        identityCard: [
          {
    
     required: true, message: '身份证号不能为空', trigger: 'blur' },
          {
    
    
            pattern: /^[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)$/,
            message: '请输入正确格式的身份证号',
            trigger: 'blur'
          }
        ]
      }
  }

猜你喜欢

转载自blog.csdn.net/Aohanzzz/article/details/126986374