总结那些前端常用的正则表达式
对于正则表达式,我们或许会经常使用,但是又很难记住。这篇文章,我将介绍下简单的正则表达式知识,然后总结前端开发中常用的正则表达式大全,需要的的朋友参考下
前言
正则这东西吧,感觉是开发的都会接触到一些..
那些所谓的基础语法就不说了哈,一搜一大把,来点实际的.
我这里就分享下我工作中汇总和遇到的,希望对一些小伙伴有些许帮助哈!!
正则汇总
匹配URL
const regexURL = /((https?|ftp)?:\/\/)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/gi; // 这条正则可以匹配这么一坨格式的url //www.baidu.com //http://www.baidu.com //https://www.baidu.com //baidu.com //test.baidu.com //gds.baidu.com //ftp://www.baidu.com // ---- 分割线 ---- // 也许有小伙伴不需要匹配这么一大坨,只要匹配http和https,上面的改写一下就好了 const regexURL = /(https?:\/\/)(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/gi; //http://www.baidu.com //https://www.baidu.com
匹配中国身份证不大靠谱版
// 为什么说不靠谱,是因为单单正则没法实现区域结合出生日期的判断这种很精准的识别 const regexCHINAIDCARD = /^((1[1-5])|(2[1-3])|(3[1-7])|(4[1-6])|(5[0-4])|(6[1-5])|71|(8[12])|91)\d{4}((19\d{2}(0[13-9]|1[012])(0[1-9]|[12]\d|30))|(19\d{2}(0[13578]|1[02])31)|(19\d{2}02(0[1-9]|1\d|2[0-8]))|(19([13579][26]|[2468][048]|0[48])0229))\d{3}(\d|X|x)?$/gi; // 可以匹配这么一堆身份证,身份证号码都是网络搜索的,一搜一堆 //230381198104143414 //650201199007186135 //460106197707275739 //44200019860325932X //43052819880216450X //654223197502255401
匹配数字,整数,浮点~~~
// 这货只会匹配正整数 const regexInteger = /^\d+$/gi; // 肯定有人想问,范围性的整数呢,看我改下,比如0-100 const regexRangeInteger = /^\d$|^[1-9]\d$|^100$/gi; // 匹配小数呢,不限定范围的 const regexFloat = /^\d+\.\d+$/gi // 倘若要限定呢,比如还是那个,0~100的任意整数和浮点数 const regexRangeIntFloat = /^(\d{0,2}(\.\d+)?|100(\.0+)?)$/gi;
匹配手机号码
// 不含卫星电话这些,只是罗列的常见的手机范围,也考虑了区域和长途前缀 const regexMobileNumber = /^(0|86|17951)?(13[0-9]|15[012356789]|17[678]|18[0-9]|14[57])[0-9]{8}$/gi;
匹配邮箱
const regexEmail = /^(([^<>()\[\]\\.,;:\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,}))$/gi // 已经不靠谱的测试了这么几种写法的邮箱格式都通过了 //cc011@qq.com //fsdlk@dd-fad.cn //df_fs2.q@jd-f.com //crklej-dsfj@132.com //fdfkj@aa_fslkdfj.com.cn //d390.fslk@qq.com //1100@gmail.cn //sflk-98_dsf@qq_fsk.com
加强版密码设置规范
// 必须含有大小写字母,数字及特殊符号,长度8~24 const regexEnhancePassword = /^(?!\s)((?=.*[a-zA-Z])(?=.*[a-z])(?=.*[A-Z])(?=.*[\W_]).\S{8,24})$/g;
中国车牌号校验
const regexCarLicense = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9挂学警港澳]{1}$/g;
匹配QQ号,微信号
// QQ在我印象中好像一直都是纯数字,现在好像发展到11位了,好像最初是从100000开始的 const regexQQNumber = /^[1-9]\d{5,10}$/gi; // 特意去查了下最新的微信号的规则 //1、微信号是微信的唯一凭证,只能设置1次; //2、可使用6-20个字母、数字、下划线和减号; //3、必须以字母开头(字母不区分大小写); //4、不支持设置中文。 const regexWeChatNumber = /^[A-Za-z][\w-]{5,19}$/gi;
用户名规范
// 普通版,英文+数字,必须字母开头,允许下划线,长度八到十六 const regexNormalUsername = /^[a-zA-Z]\w{7,15}$/gi; // 在这个基础上允许中文四到六个字符 const regexE1 = /^[\u4e00-\u9fa5]{4,6}$|^[a-zA-Z]\w{7,15}$/gi; // 多重复用版本,允许手机,邮箱,中文,这个若是写成一个的话,用分组的写法就好了 // 不过很长很长,,,推荐用if...else ...来拆分,,就三个正则....
以上是总结那些前端常用的正则表达式的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

基于无阻塞、事件驱动建立的Node服务,具有内存消耗低的优点,非常适合处理海量的网络请求。在海量请求的前提下,就需要考虑“内存控制”的相关问题了。 1. V8的垃圾回收机制与内存限制 Js由垃圾回收机

当今前端开发中,Vue.js 已经成为了一个非常流行的框架。随着 Vue.js 的不断发展,单元测试变得越来越重要。今天,我们将探讨如何在 Vue.js 3 中编写单元测试,并提供一些最佳实践和常见的问题及解决方案。

PHP与Vue:完美搭档的前端开发利器在当今互联网高速发展的时代,前端开发变得愈发重要。随着用户对网站和应用的体验要求越来越高,前端开发人员需要使用更加高效和灵活的工具来创建响应式和交互式的界面。PHP和Vue.js作为前端开发领域的两个重要技术,搭配起来可以称得上是完美的利器。本文将探讨PHP和Vue的结合,以及详细的代码示例,帮助读者更好地理解和应用这两

跨域是开发中经常会遇到的一个场景,也是面试中经常会讨论的一个问题。掌握常见的跨域解决方案及其背后的原理,不仅可以提高我们的开发效率,还能在面试中表现的更加

推荐适合地理信息科学专业学生用的电脑1.推荐2.地理信息科学专业学生需要处理大量的地理数据和进行复杂的地理信息分析,因此需要一台性能较强的电脑。一台配置高的电脑可以提供更快的处理速度和更大的存储空间,能够更好地满足专业需求。3.推荐选择一台配备高性能处理器和大容量内存的电脑,这样可以提高数据处理和分析的效率。此外,选择一台具备较大存储空间和高分辨率显示屏的电脑也能更好地展示地理数据和结果。另外,考虑到地理信息科学专业学生可能需要进行地理信息系统(GIS)软件的开发和编程,选择一台支持较好的图形处

随着互联网技术的发展,前端开发变得日益重要。尤其是移动端设备的普及,更需要高效、稳定、安全又易维护的前端开发技术。而作为一门快速发展的编程语言,Go语言已经被越来越多的开发者所使用。那么,使用Go语言进行前端开发行得通吗?接下来,本文将为你详细说明如何使用Go语言进行前端开发。先来看看为什么使用Go语言进行前端开发。很多人认为Go语言是一门

Golang正则表达式使用管道符|来匹配多个单词或字符串,将各个选项作为逻辑OR表达式分隔开来。例如:匹配"fox"或"dog":fox|dog匹配"quick"、"brown"或"lazy":(quick|brown|lazy)匹配"Go"、"Python"或"Java":Go|Python|Java匹配单词或4位邮政编码:([a-zA

在前端开发面试中,常见问题涵盖广泛,包括HTML/CSS基础、JavaScript基础、框架和库、项目经验、算法和数据结构、性能优化、跨域请求、前端工程化、设计模式以及新技术和趋势。面试官的问题旨在评估候选人的技术技能、项目经验以及对行业趋势的理解。因此,应试者应充分准备这些方面,以展现自己的能力和专业知识。
