校验正则表达式:中文、英文、中英文、中英文/数字/符号

export const checkName = (rule, value, callback) => {

  let test = /^[\u4E00-\u9FA5]+$/.test(value);

  if (!value && rule['required']) {

    return callback(new Error('请输入'))

  } else if (value && !test || !test && rule['required']) {

    return callback(new Error('请输入中文'))

  } else {

    return callback()

  }

}

export const checkNameEn = (rule, value, callback) => {

  value = value ? value.trim() : value

  let test = /^[a-zA-Z]+$/.test(value);

  if (!value && rule['required']) {

    return callback(new Error('请输入'))

  } else if (value && !test || !test && rule['required']) {

    return callback(new Error('请输入英文'))

  } else {

    return callback()

  }

}

export const checkENNum = (rule, value, callback) => {

  value = value && value.trim()

  if (!value) {

    return callback(new Error('不能为空'))

  } else if (!/^[A-Za-z0-9]{17}$/.test(value)) {

    return callback(new Error('请输入17位英文数字'))

  } else {

    return callback()

  }

}

export const checkCNENNum = (rule, value, callback) => {

  value = value && value.trim()

  if (value && !/^[\u4E00-\u9FA5]{1}[A-Za-z]{1}[A-Za-z0-9]{6}$/.test(value)) {

    return callback(new Error('请输入8位中英文数字'))

  } else if (!value) {

    return callback(new Error('请输入'))

  } else {

    return callback()

  }

export const checkNameN = (rule, value, callback) => {

  if (!value && value !== 0 && rule['required']) {

    return callback(new Error('请输入'))

  }else if (!/^[a-zA-Z\d\W_]+$/.test(value) || value.indexOf(' ') >= 0) {

    return callback(new Error('请输入中英文数字符号'))

  } else {

    callback()

  }

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/30080.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ARM32开发-fat_fs文件系统

FAT_FS 文件系统 FAT (File Allocation Table) 文件系统是一种广泛使用的基于磁盘的文件系统,尤其适用于小型嵌入式系统和存储卡。FAT_FS 就是一个专门针对 FAT 文件系统的开源实现。 FAT_FS 的主要特点 轻量级和高度可移植: FAT_FS 是一个非常轻量级的文件系统实现,占用资源少…

学懂C#编程:让函数返回 多个返回值 的几种常用技术

1. 使用 out 或 ref 参数 out 和 ref 参数允许方法修改传入变量的值,并通过它们“返回”多个值。ref 需要变量事先初始化,而 out 不要求。 public void GetValues(out int val1, out string val2) {val1 10;val2 "Hello"; }// 使用示例 int…

升级CENTOS 系统内核

更新系统和安装ELRepo存储库: sudo yum update sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org sudo yum install https://www.elrepo.org/elrepo-release-7.0-5.el7.elrepo.noarch.rpm安装最新的主线(Mainline)内核&…

人脸识别考勤机给企业带来了哪些好处

人脸识别考勤机给企业带来了哪些好处 随着考勤软件在国内各企业中逐渐使用,人们对于考勤的这种方式已不再生疏,传统的纸质签到、指纹打卡已因存在不灵敏、易作弊、难统计等诸多弊病,逐步被可以管理考勤的手机软件索取代; 近些…

【网络安全的神秘世界】渗透之信息收集流程

🌝博客主页:泥菩萨 💖专栏:Linux探索之旅 | 网络安全的神秘世界 | 专接本 | 每天学会一个渗透测试工具 渗透测试之信息收集 切记:搜索到敏感信息之后,不要随意下载和传播,属于违法行为&#xf…

如何基于ITIL构建有效的IT服务管理体系

在数字经济时代,IT服务管理已成为企业运作的核心支撑。随着信息技术的快速发展和应用,企业对IT服务的需求不断增加,而如何高效地管理这些服务成为一个重要挑战。基于ITIL(信息技术基础架构库)构建有效的IT服务管理体系…

Virtualbox7.0版本安装报错:Invalid installation directory

错误情况 我在安装virtualbox最新版7.0.18时候,因为默认安装在C盘,我改成了E盘,然后就报错 Invalid installation directory The chosen installation directory is invalid, as it does not meet the security requirements. Refer to th…

深入理解 JS/TS 中的 filter 方法及其布尔值筛选功能

今天写需求的时候,需要对后端传回来的数据做乱码校验处理,需要筛除乱码数据。 这里我使用正则表达式并封装了一个判断是否为正常字段的方法。(如果是正常字段返回true,乱码字段返回false) 对后端返回的数据&#xff…

快速创建SpringBoot项目

在项目开发时候,我们不会自己创建一个maven项目,自己慢慢导入依赖,有更方便的方法: 1.idea快速创建spring boot项目 使用Spring Initializr 注意1:需要联网 注意2:resources里的目录结构: …

【js判断机型】

var isIOS /(iPhone|iPad|iPod)/i.test(navigator.userAgent) var isiPad navigator.userAgent.match(/(iPad)/) || (navigator.platform ‘MacIntel’ && navigator.maxTouchPoints > 1) 上面这个不行的话,再试下这个 var isiPad (navigator.userAg…

那些年我为了考PMP踩过的坑.....

说到考PMP我尊嘟很难过且伤心,众所周知,报考PMP都是要报机构的而且还是PMI认证的机构,所以在报考PMP过程中选的机构我可以说踩过了很多坑了...... Q:包过吗? 大家千万不要信某某机构说的包过噱头,真的很坑…

4000字读懂实时数仓的过去现在和未来(建议收藏)

1991年,比尔恩门(Bill Inmon)出版了他的第一本关于数据仓库的书《Building the Data Warehouse》,标志着数据仓库概念的确立。 我们所常说的企业数据仓库Enterprise Data Warehouse (EDW) ,就是一个用于聚合不同来源的…

【嵌入式】嵌入式Linux开发实战指南:从交叉编译到触摸屏交互

文章目录 前言:1.简介1.1. 交叉编译工具1.2. 项目开发流程:1.3. ARM开发板的连接方法 2. 开发板连接3. 系统文件 IO4. 设置共享文件夹3.1. 读文件3.2. 写文件3.2. 设置文件偏移量 4. LCD显示屏显示4.1. LCD 显示颜色4.2. 将文件下载到开发板4.2.1. 在CRT…

002.Linux CentOS7 安装

我 的 个 人 主 页:👉👉 失心疯的个人主页 👈👈 入 门 教 程 推 荐 :👉👉 Python零基础入门教程合集 👈👈 虚 拟 环 境 搭 建 :👉&…

【Android面试八股文】Kotlin内置标准函数apply的原理是什么?

文章目录 一、原理解析二、 示例代码2.1 具体示例应用场景2.2 为什么使用 `apply`?apply 是 Kotlin 标准库中的一个高阶函数,它的作用是在对象上执行一个代码块,并返回这个对象本身。其原理涉及到函数类型和接收者对象的结合使用。 一、原理解析 函数类型与接收者对象的结合…

代码随想录算法训练营DAY42|1049. 最后一块石头的重量 II、494. 目标和、474.一和零

1049. 最后一块石头的重量 II 题目链接:1049. 最后一块石头的重量 II class Solution(object):def lastStoneWeightII(self, stones):""":type stones: List[int]:rtype: int"""n len(stones)sum_stones sum(stones)weight sum_…

Git Extensions gui工具差异显示乱码

某些IDE例如KEIL等默认编码格式为GB2312,而git extensions默认utf-8,如果不想修改文件格式为utf-8的话就修改git extensions格式为GB2312。 默认是没有chines 这个选项的,我这里是已经添加好的。方法为上方工具栏->设置->Git->设置…

Linux C编译器从零开发三

AST语法树 BNF抽象 expr equality equality relational ("" relational | "!" relational)* relational add ("<" add | "<" add | ">" add | ">" add)* add mul ("" …

为什么很多Java程序员会下意识觉得Java的就是最好的?

在开始前刚好我有一些资料&#xff0c;是我根据网友给的问题精心整理了一份「Java的资料从专业入门到高级教程」&#xff0c; 点个关注在评论区回复“888”之后私信回复“888”&#xff0c;全部无偿共享给大家&#xff01;&#xff01;&#xff01;做为一个真正热爱编程&#…

使用rufus做Kali Linux时持久分区大小如何设置

持久分区大小是什么意思&#xff1a; 持久分区大小指的是在U盘安装引导Kali Linux时&#xff0c;为保存Kali修改后的设置&#xff08;如中文界面显示等&#xff09;而预留的空间大小。这个空间相当于电脑中的D盘&#xff0c;用于保存修改后的设置。 而剩下的空间则用于安装Kali…