Vue中封装前端常用的正则校验方法,正则表达式

前言

我们在做Vue项目开发的时候,肯定会经常遇到正则表达式,例如手机号,邮箱,密码和数字,每次验证都需要去查询,浪费时间不说,也造成代码冗余,我也遇到过,那我就自己封装一个吧,方便大家使用查询。可以减少咱们的代码量还可以方便我们在前端各大项目中使用。


一、创建js文件

在项目中创建一个js文件,方便咱们后期调用,就比如我的:

二、封装正则方法

 个人封装一个公共的 js文件,名命为 rule.js, 如下:

/**
 * 邮箱
 * @param {*} s
 */
export function isEmail (s) {
  return /^([a-zA-Z0-9._-])+@([a-zA-Z0-9_-])+((.[a-zA-Z0-9_-]{2,3}){1,2})$/.test(s)
}

/**
 * 手机号码
 * @param {*} s
 */
export function isMobile (s) {
  return /^1[0-9]{10}$/.test(s)
}

/**
 * 电话号码
 * @param {*} s
 */
export function isPhone (s) {
  return /^([0-9]{3,4}-)?[0-9]{7,8}$/.test(s)
}

/**
 * URL地址
 * @param {*} s
 */
export function isURL (s) {
  return /^http[s]?:\/\/.*/.test(s)
}

/**
 * 正整数
 * @param {*} s
 */
export function isNumber (s) {
  return /^\+?[1-9][0-9]*$/.test(s)
}

/**
 * 身份证号码
 * @param {*} s
 * @returns
 */
export function isIDNo (s) {
  return /^[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(s)
}
/**
 * 数字带小数点且不能位负数
 * @param {*} s
 */
export function isnegative (s) {
  return /^\+?((0|([1-9]+\d*))|((0\.\d+)|([1-9]+\d*\.\d+)))$/.test(s)
}

/**
 * 年月日
 * @param {*} s
 */
export function specificdate (s) {
  return /^\d{4}\-\d{2}\-\d{2}$/.test(s)
}

三、项目中使用

1、引入封装好的文件

import { isMobile } from '@/utils/validate'

2、具体使用

就比如验证手机号,打印一下看看

这是对的,控制台输出true,如果格式不对输出false,其他的都是一样的,比葫芦画瓢

3、在你的项目中怎么使用呢!

import { isMobile } from '@/utils/validate'
let validateMobile = (rule, value, callback) => {
  if (!isMobile(value)) {
    return callback(new Error('手机号格式不正确'))
  }
  callback()
}



//在你需要校验的字段data中填写,可以参考elementUI中表单校验书写格式
rules: [
          { required: true, message: '请输入', trigger: 'blur' },
          { validator: validateMobile, trigger: 'blur' }
        ]


感谢支持,博主会持续分享更好用的组件

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Vue正则表达式校验可以用于验证不同格式的数据,比如身份证号和邮箱。以下是一些常见的正则表达式校验方法: 1. 身份证号正则: `/^\d{6}(18|19|20)?\d{2}(0[1-9]|1[0-2])(([0-2][1-9])|10|20|30|31)\d{3}(\d|X|x)$/`。这个正则表达式可以用于验证身份证号码是否符合规定的格式。 2. 邮箱正则: `/^[A-Za-z\d]([-_.][A-Za-z\d])*@([A-Za-z\d][-]){1,2}[A-Za-z\d]{2,5}$/g`。这个正则表达式可以用于验证邮箱地址是否符合规定的格式。 同时,你还可以使用Vue正则表达式校验方法来限制输入的内容。比如,如果你想只允许输入汉字、英文字母和数字,不允许输入空格和特殊符号,可以使用如下代码: ```javascript var name = this.name.replace(/[`~!#$%^&*()_/\- =<>?:"{}|~!#¥@%·—……&*()={}|《》?:“”【】、;‘’,。、\s ]/g, ''); ``` 以上代码正则表达式可以替换掉输入内容的空格和特殊符号,只保留汉字、英文字母和数字。 综上所述,Vue正则表达式校验可以通过以上方法来验证不同格式的数据。你可以根据具体的需求选择合适的正则表达式来进行校验。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [vue项目常用正则校验表达式](https://blog.csdn.net/weixin_46112225/article/details/116228796)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值