js 验证 常用正则表达式集锦

下面是详细讲解“js 验证 常用正则表达式集锦”的完整攻略:

1. 正则表达式基础知识

正则表达式是一种用于描述字符串规则的表达式,可以用来匹配、查找和替换字符串。在 JS 中,使用 RegExp 对象来创建正则表达式,也可以通过字面量表示法来创建。

对于一些常用的字符特殊符号,需要在正则表达式中进行转义,如下表所示:

特殊字符 描述
\ 转义字符,用来将特殊字符转义为字面量字符
. 匹配除了换行符外的任意字符
^ 匹配字符串的开始位置
$ 匹配字符串的结束位置
* 匹配前面的字符零次或多次
+ 匹配前面的字符一次或多次
? 匹配前面的字符零次或一次
{n} 匹配前面的字符恰好 n 次
{n,} 匹配前面的字符至少 n 次
{n,m} 匹配前面的字符至少 n 次,且不超过 m 次
[] 字符集,匹配方括号中包含的任何一个字符
[^] 否定字符集,匹配方括号中未包含的任何一个字符
| 或运算符,匹配左右两侧任意一个表达式
() 分组,将子表达式分组,可以在后面的表达式中使用

2. 常用正则表达式

2.1 验证手机号

function isMobile(mobile) {
  return /^1[3456789]\d{9}$/.test(mobile)
}

使用 ^1[3456789]\d{9}$ 正则表达式来验证手机号码,其中:

  • ^ 匹配字符串的开始位置;
  • 1 匹配手机号码的开头必须是数字 1;
  • [3456789] 匹配第二个数字必须是 3456789 中的一个;
  • \d{9} 匹配后面的 9 个数字;
  • $ 匹配字符串的结束位置。

2.2 验证邮箱地址

function isEmail(email) {
  return /^([a-zA-Z0-9_\.\-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/.test(email)
}

使用 ^([a-zA-Z0-9_\.\-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+ 正则表达式来验证邮箱地址,其中:

  • ^ 匹配字符串的开始位置;
  • ([a-zA-Z0-9_\.\-])+ 匹配由字母、数字、下划线、点或破折号组成的用户名,其中用户名至少包含一个字符;
  • @ 匹配邮箱地址中的 @ 符号;
  • ([a-zA-Z0-9_-])+ 匹配域名中的字母、数字、下划线或破折号,域名至少包含一个字符;
  • (.[a-zA-Z0-9_-])+ 匹配顶级域名,其中.表示匹配任意字符,顶级域名至少包含一个字符;
  • $ 匹配字符串的结束位置。

3. 总结

以上是关于 JS 常用正则表达式的介绍和示例,希望对大家有所帮助。正则表达式是一种强大的字符串处理工具,掌握和熟练应用其语法规则,可以大大提高编程效率。在实际应用中,可以根据需要灵活组合和调整正则表达式来满足不同的需求。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js 验证 常用正则表达式集锦 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • js屏蔽退格键(backspace或者叫后退键与F5)

    下面是 JS 屏蔽退格键(backspace)和F5键的完整攻略,包含了两个示例说明: 如何屏蔽退格键和F5键 当用户在执行操作的时候,有时候不希望用户误操作将页面刷新或者回退,所以需要屏蔽一些按键,比如退格键和F5键。下面就来讲解具体的屏蔽方式。 屏蔽退格键(backspace) document.onkeydown = function() { if (…

    JavaScript 2023年6月11日
    00
  • 让你5分钟掌握9个JavaScript小技巧

    下面我就来详细讲解“让你5分钟掌握9个JavaScript小技巧”的完整攻略。 1. 变量值交换 有一种交换变量值的另类写法,可以用解构赋值完成: let a = 1; let b = 2; [a, b] = [b, a]; console.log(a) //输出2 console.log(b) //输出1 2. 使用扩展运算符复制数组 扩展运算符(spre…

    JavaScript 2023年5月17日
    00
  • 浅谈JavaScript中的字符编码转换问题

    浅谈JavaScript中的字符编码转换问题 什么是字符编码? 在计算机中,字符的内部表示是使用数字来表示的。我们所看到的文字、符号等内容在计算机中都需要通过数字编码来表达。因此,字符编码就是一种将字符映射为数字的方式。 常用的字符编码有ASCII、Unicode、UTF-8等。 JavaScript中的字符编码 在JavaScript中处理字符编码主要涉及…

    JavaScript 2023年5月20日
    00
  • javascript使用window.name解决跨域问题第2/2页

    JavaScript使用window.name解决跨域问题是一种比较简单易用的跨域解决方案。下面我将详细讲解此攻略的完整过程。 一、什么是跨域问题? 跨域问题(Cross-Domain)是指在进行web开发时,如果一个网页嵌入了来自其他域的资源,如通过Ajax、Frame、Image等方式跨域访问,由于浏览器的同源策略安全限制,将会导致跨域访问出现许多问题。…

    JavaScript 2023年6月11日
    00
  • 一个网站部署多个Google Analytics帐户

    下面我将为你详细讲解如何在一个网站上部署多个Google Analytics帐户。 1.背景介绍 Google Analytics是一款功能强大的网站分析工具,它可以帮助网站管理员了解访问者的行为、特征和兴趣,从而更好地优化网站的内容和功能。而有时候,一个网站需要针对不同的用户群体进行分析和优化,此时,我们就需要为该网站部署多个Google Analytic…

    JavaScript 2023年6月11日
    00
  • JavaScript对象模型-执行模型

    JavaScript对象模型(DOM)和执行模型是JavaScript语言的两个重要方面,它们是开发Web应用程序的必备技能之一。在本篇攻略中,我们将重点讲解JavaScript对象模型和执行模型的概念以及如何使用它们来创建交互式Web应用。 JavaScript 对象模型 JavaScript对象模型(DOM)是一套API,它定义了访问和处理HTML和XM…

    JavaScript 2023年5月27日
    00
  • JavaScript面向对象程序设计创建对象的方法分析

    JavaScript面向对象程序设计创建对象的方法分析 什么是对象? 对象是一种数据类型。它可以用来存储一组相关的数据,并且允许我们定义相关的方法来访问和操作这些数据。对象由多个属性组成,每个属性都有一个名称和对应的值。 如何创建对象? 在JavaScript中,有多种创建对象的方式。下面分别介绍这些方法。 1. 对象字面量 对象字面量是最常用的创建对象的方…

    JavaScript 2023年5月27日
    00
  • js console.log打印对像与数组用法详解

    接下来我将为您详细讲解js中console.log打印对象与数组的用法,以及两个样例说明。 什么是console.log console.log()是Javascript中用来打印信息到控制台(console)的方法。我们可以在控制台里面看到我们传递给console.log()方法的参数。 打印对象 当我们需要打印一个对象时,我们可以直接传入对象参数给con…

    JavaScript 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部