JS常用正则校验大全

1、手机号(mobile phone)中国(严谨), 根据工信部2019年最新公布的手机号段
const reg = /^(?😦?:+|00)86)?1(?😦?:3[\d])|(?:4[5-79])|(?:5[0-35-9])|(?:6[5-7])|(?:7[0-8])|(?:8[\d])|(?:9[189]))\d{8}$/;
const str = “19119255642”;
console.log(校验 ${reg.test(str) ? "正确" : "错误"});
2、email(邮箱)
const reg = /(([<>()[]\.,;:\s@“]+(.[^<>()[]\.,;:\s@”]+))|(“.+”))@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}])|(([a-zA-Z-0-9]+.)+[a-zA-Z]{2,}))$/;
const str = “90203918@qq.com”;
console.log(校验 ${reg.test(str) ? "正确" : "错误"});
3、座机(tel phone)电话(国内),如: 0341-86091234
const reg = /(?😦?:\d{3}-)?\d{8}|(?:\d{4}-)?\d{7,8})(?:-\d+)?$/;
const str = “0936-4211235”;
console.log(校验 ${reg.test(str) ? "正确" : "错误"});
4、身份证号(2代,18位数字),最后一位是校验位,可能为数字或字符X
const reg = /1\d{5}(?:18|19|20)\d{2}(?:0[1-9]|10|11|12)(?:0[1-9]|[1-2]\d|30|31)\d{3}[\dXx]$/;
const str = “12345619991205131x”;
console.log(校验 ${reg.test(str) ? "正确" : "错误"});
5、中文姓名
const reg = /^(?:[\u4e00-\u9fa5·]{2,16})$/;
const str = “韩小韩”;
console.log(校验 ${reg.test(str) ? "正确" : "错误"});
6、英文姓名
const reg = /(2[a-zA-Z\s]{0,20}[a-zA-Z]$)/;
const str = “James Han”;
console.log(校验 ${reg.test(str) ? "正确" : "错误"});
7、网址(URL)
const reg =
/(((ht|f)tps?)😕/)?([!@# %^&*?.\s-]([^!@# %&*?.\s]{0,63}[!@#$%^&
?.\s])?.)+[a-z]{2,6}/?/;
const str = “https://www.vvhan.com”;
console.log(校验 ${reg.test(str) ? "正确" : "错误"});
8、必须带端口号的网址(或ip)
const reg = /^((ht|f)tps?😕/)?[\w-]+(.[\w-]+)+:\d{1,5}/?$/;
const str = “https://www.vvhan.com:80”;
console.log(校验 ${reg.test(str) ? "正确" : "错误"});
9、银行卡号(10到30位, 覆盖对公/私账户, 参考[微信支付]
const reg = /3\d{9,29}$/;
const str = “6222026006705354000”;
console.log(校验 ${reg.test(str) ? "正确" : "错误"});
10、帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线组合
const reg = /4\w{4,15}$/;
const str = “han_666666”;
console.log(校验 ${reg.test(str) ? "正确" : "错误"});
11、中文/汉字
const reg = /^(?:[\u3400-\u4DB5\u4E00-\u9FEA\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA1F\uFA21\uFA23\uFA24\uFA27-\uFA29]|[\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0])+$/;
const str = “韩小韩博客”;
console.log(校验 ${reg.test(str) ? "正确" : "错误"});
12、密码强度校验,最少6位,包括至少1个大写字母,1个小写字母,1个数字,1个特殊字符
const reg = /^\S*(?=\S{6,})(?=\S*\d)(?=\S*[A-Z])(?=\S*[a-z])(?=\S*[!@# %^&*? ])\S* /;
const str = “han@666vvx,”;
console.log(校验 ${reg.test(str) ? "正确" : "错误"});
13、微信号(wx),6至20位,以字母开头,字母,数字,减号,下划线
const reg = /5[-a-zA-Z0-9]{5,19}$/;
const str = "kd
-666";
console.log(校验 ${reg.test(str) ? "正确" : "错误"});
14、邮政编码(中国)
const reg = /^(0[1-7]|1[0-356]|2[0-7]|3[0-6]|4[0-7]|5[1-7]|6[1-7]|7[0-5]|8[013-6])\d{4}$/;
const str = “734500”;
console.log(校验 ${reg.test(str) ? "正确" : "错误"});
15、中文和数字
const reg = /^((?:[\u3400-\u4DB5\u4E00-\u9FEA\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA1F\uFA21\uFA23\uFA24\uFA27-\uFA29]|[\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0])|(\d))+$/;
const str = “韩小韩好6啊”;
console.log(校验 ${reg.test(str) ? "正确" : "错误"});
16、匹配连续重复的字符
const reg = /(.)\1+/;
const str = “112233”;
console.log(校验 ${reg.test(str) ? "正确" : "错误"});
17、统一社会信用代码
const reg = /6{2}\d{6}[0-9A-HJ-NPQRTUWXY]{10}$/;
const str = “91110108772551611J”;
console.log(校验 ${reg.test(str) ? "正确" : "错误"});
18、子网掩码(不包含 0.0.0.0)
const reg = /^(254|252|248|240|224|192|128).0.0.0|255.(254|252|248|240|224|192|128|0).0.0|255.255.(254|252|248|240|224|192|128|0).0|255.255.255.(255|254|252|248|240|224|192|128|0)$/;
const str = “255.255.255.0”;
console.log(校验 ${reg.test(str) ? "正确" : "错误"});
19、车牌号(新能源)
const reg = /7A-HJ-NP-Z$/;
const str = “京AD92035”;
console.log(校验 ${reg.test(str) ? "正确" : "错误"});
20、车牌号(非新能源)
const reg = /8[A-HJ-NP-Z][A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳]$/;
const str = “京A00599”;
console.log(校验 ${reg.test(str) ? "正确" : "错误"});
21、车牌号(新能源+非新能源)
const reg = /9[A-HJ-NP-Z][A-HJ-NP-Z0-9]{4,5}[A-HJ-NP-Z0-9挂学警港澳]$/;
const str = “京A12345D”;
console.log(校验 ${reg.test(str) ? "正确" : "错误"});
22、护照(包含香港、澳门)
const reg = /(10\d{8}KaTeX parse error: Undefined control sequence: \d at position 66: …][Aa])|(1[45]))\̲d̲{7})/;
const str = “s28233515”;
console.log(校验 ${reg.test(str) ? "正确" : "错误"});


  1. 1-9 ↩︎

  2. a-zA-Z ↩︎

  3. 1-9 ↩︎

  4. a-zA-Z ↩︎

  5. a-zA-Z ↩︎

  6. 0-9A-HJ-NPQRTUWXY ↩︎

  7. 京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领 ↩︎

  8. 京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领 ↩︎

  9. 京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领 ↩︎

  10. EeKkGgDdSsPpHh ↩︎

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

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

相关文章

通过函数来实现复数相加

在之前的的文章中介绍过函数重载&#xff0c;已经接触到重载&#xff08;overloading&#xff09;这个名词。所谓重载&#xff0c;就是重新赋予新的含义。函数重载就是对一个已有的函数赋予新的含义&#xff0c;使之实现新的功能。因此&#xff0c;同一个函数名就可以用来代表不…

vscode复制文件:行号

File Line Reference 插件可以复制文件名加行号&#xff0c;还可以将选中函数名进行复制&#xff0c;比较方便 w alt y (Windows) , ctrl y (macOS)复制行号加文件名 alt u (Windows) or ctrl u (macOS)复制带有选定行号文件名&#xff0c;函数名需要选中才行 查找文件&…

若依 ruoyi-vue SpringBoot highlight-textarea 输入框敏感词关键词高亮标红(二)

参考文章&#xff0c;非常感谢大佬的分享 实现可高亮的输入框 — HighlightTextarea GitHub:highlight-textarea 可看作者上一篇文章 若依 ruoyi-vue SpringBoot聊天敏感词过滤sensitive-word&#xff08;一&#xff09; 效果图 审核时&#xff0c;输入框高亮敏感词&#xff…

变阻器的分类

变阻器作为用于调节电路中电阻值的电子元件&#xff0c;在电子电路中具有广泛的应用。根据不同的工作原理和结构形式&#xff0c;变阻器可以分为多种类型。以下是对变阻器分类的详细阐述&#xff1a; 一、按工作原理分类 电位器是一种通过滑动端位置调节电阻值的变阻器&#x…

C++中 Debug和Release的区别

在C/C编程领域&#xff0c;Debug和Release是两种截然不同的编译模式&#xff0c;它们分别服务于不同的开发阶段和目标。理解这两种模式的区别不仅对于提高开发效率至关重要&#xff0c;还直接影响到最终产品的性能和质量。本文将深入探讨C/C中Debug和Release模式的区别&#xf…

Noah-MP陆面生态水文模拟与多源遥感数据同化

陆面模型在生态水文研究中的地位和作用&#xff1b;熟悉模型的发展历程&#xff0c;常见模型及各自特点&#xff1b;理解Noah-MP模型的原理&#xff0c;掌握Noah-MP模型在单站和区域的模拟、模拟结果的输出和后续分析及可视化等方法&#xff1b;课程还将深入讲解数据同化的原理…

6-添加自定义命令和生成的文件

本文使用的示例代码见1-简单开始cmake实践-CSDN博客。 假设&#xff0c;出于本教程的目的&#xff0c;我们决定不使用平台log和exp函数&#xff0c;而是希望生成一个预先计算值的表&#xff0c;以便在mysqrt函数中使用。在本节中&#xff0c;我们将创建表作为构建过程的一部分&…

1区老牌神刊,仅37天录用!网友:“这审稿速度救了我一条命”!

关注GZH【欧亚科睿学术】&#xff0c;GET完整版2023JCR分区列表&#xff01; ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ 期刊信息概况 【期刊类型】计算机科学类SCIE&EI 【出版社】ELSEVIER出版社 【期刊概况】IF&#xff1a;4.0-5.0&#xff0c;JCR1区&#xff0c;中科院3区…

用 Dockerfile 创建镜像的基本步骤有哪些?

使用 Dockerfile 创建镜像的基本步骤如下&#xff1a; 定义基础镜像 在 Dockerfile 的开头&#xff0c;使用 FROM 指令指定一个基础镜像。例如&#xff1a; FROM ubuntu:latest这表示基于最新的 Ubuntu 镜像来构建。 安装依赖和软件 使用 RUN 指令来执行命令&#xff0c;安装…

电脑文件xinput1_3.dll丢失要怎么修复win10?一键解决xinput1_3.dll丢失的方法

电脑文件xinput1_3.dll丢失要怎么修复win10&#xff1f;其实无论是哪种系统&#xff0c;是不是win10其修复方法都是大同小异&#xff0c;不过在修复xinput1_3.dll文件之前&#xff0c;首先我们要先了解这个xinput1_3.dll文件&#xff0c;只有了解了&#xff0c;那么才可以快速的…

奇瑞新能源车型EQ2在驾校领域的CAN总线数据应用

在当今这个快速发展的汽车时代&#xff0c;科技的进步不仅推动了汽车性能的提升&#xff0c;也为驾驶培训领域带来了革命性的变化。其中&#xff0c;奇瑞EQ2作为一款电动汽车&#xff0c;其在驾校领域的应用尤其值得关注&#xff0c;特别是其采用的CAN总线技术。CAN总线&#x…

【productj服务导出文件503问题】

设备服务只要导出文件&#xff0c;就报503&#xff0c;查看K8S发现服务重启 1. 复现问题1.1 问题复现频繁fullGC 宿主pod服务日志监控1.2 小内存复现 接口没啥问题&#xff0c;导出就会导致服务重启 1. 复现问题 当前uat环境配置&#xff1a; pod内存&#xff1a;2G JVM参数&a…

Python 利用pandas处理CSV文件(DataFrame的基础用法)

前面介绍过通过Python标准库中的CSV模块处理CSV文件&#xff1a; Python 利用CSV模块处理数据 相比CSV模块&#xff0c;pandas的功能更加强大&#xff0c;本文将简单介绍如何通过pandas来处理CSV文件。 文章目录 一、pandas简介二、用法示例2.1 读取CSV文件2.1.1 read_csv参数…

设计模式使用场景实现示例及优缺点(创建型模式——单例模式、建造者模式、原型模式)

创建型模式 单例模式&#xff08;Singleton Pattern&#xff09; 单例模式&#xff08;Singleton Pattern&#xff09;在Java中的使用场景与在其他编程语言中类似&#xff0c;其主要目的是确保一个类只有一个实例&#xff0c;并提供一个全局的访问点。以下是单例模式的一些常…

现代化3D Web轻量引擎HOOPS Communicator:基于ESM的代码库转型!

HOOPS Communicator自2024.2.0版本起&#xff0c;向基于ECMAScript Modules (ESM)的系统迁移的决策和技术细节。文章分析了这一转型对代码组织、封装、依赖管理、性能以及与现代JavaScript开发实践兼容性的积极影响&#xff0c;并讨论了IIFE和UMD的兼容性支持。 引言 随着Jav…

聊聊springboot项目如何利用jmh来进行基准测试

前言 1、什么是JMH JMH&#xff08;Java Microbenchmark Harness&#xff09;是由OpenJDK团队开发的一个用于Java微基准测试工具套件&#xff0c;主要是基于方法层面的基准测试&#xff0c;精度可以达到纳秒级。它提供了一种标准、可靠且可重复的方式来衡量Java代码的性能&…

[kuangbin]基础dp

Max Sum Plus Plus 题目大意&#xff1a;从一串数组中挑选连续m段子数组&#xff0c;使得最后的sum最大。 思路&#xff1a;首先考虑开二维数组&#xff0c;那么动态转移方程为&#xff1a; dp[i][j]max(dp[i-1][k]a[j],dp[i][j-1]a[j]) 其中dp表示枚举到第 j 个数的时候&#…

【深度学习(42)】通过vscode使用anaconda的python环境

按ctrlshiftp&#xff0c;选择Python:Select Interpreter 选择anaconda下的python虚拟环境

Elasticsearch 高亮搜索结果:提升用户体验的关键技术

在构建搜索引擎或任何需要快速、准确信息检索的应用时&#xff0c;搜索结果的高亮显示是一项至关重要的功能。它不仅能够显著提升用户的搜索体验&#xff0c;还能帮助用户更快地定位到他们感兴趣的内容。Elasticsearch&#xff0c;作为当今最流行的开源搜索和分析引擎之一&…

【k8s安装redis】k8s环境无pvc的情况下安装redis哨兵集群

文章目录 简介一.条件及环境说明&#xff1a;二.需求说明&#xff1a;三.实现原理及说明四.详细步骤4.1.规划节点标签4.2.创建configmap配置4.3.创建三个statefulset和service headless配置4.4.创建哨兵deployment配置和service配置 五.安装说明 简介 k8s集群中搭建有状态的服务…