15个常用的javaScript正则表达式(收藏)

yizhihongxing

15个常用的javaScript正则表达式(收藏)

正则表达式(Regular Expression),又称作规则表达式,是用于描述特定模式的字符串,通常用于字符匹配、字符串搜索、字符串替换等用途。JavaScript内置支持正则表达式,并且提供了一系列用于操作正则表达式的API。这篇文章汇总了15个常用的JavaScript正则表达式,让你熟悉它们的应用场景及相关的代码实现。

1. 匹配数字

正则表达式:/^\d+$/
说明:以数字开头和结尾,并且中间包含的字符都是数字,至少包含一位数字。

示例:

console.log(/^\d+$/.test("123")); // true
console.log(/^\d+$/.test("abc123")); // false

2. 匹配字母

正则表达式:/^[a-zA-Z]+$/
说明:以字母开头和结尾,并且中间包含的字符都是字母,至少包含一位字母。

示例:

console.log(/^[a-zA-Z]+$/.test("abc")); // true
console.log(/^[a-zA-Z]+$/.test("abc123")); // false

3. 匹配邮箱地址

正则表达式:/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/
说明:匹配标准的邮箱地址格式,以字母、数字、下划线为合法字符,要求必须包含@和.符号,并且@符号不能作为开头或结尾。

示例:

console.log(/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test("test@example.com")); // true
console.log(/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test("test@example..com")); // false

4. 匹配手机号码

正则表达式:/^1[3456789]\d{9}$/
说明:匹配中国大陆地区的手机号码格式,以1开头,第二位是3到9中的数字,后面跟着9位数字。

示例:

console.log(/^1[3456789]\d{9}$/.test("13812345678")); // true
console.log(/^1[3456789]\d{9}$/.test("12345678999")); // false

5. 匹配IP地址

正则表达式:/^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/
说明:匹配IPv4地址格式,包含4个数字段,每个段的取值范围是0-255。

示例:

console.log(/^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/.test("192.168.1.1")); // true
console.log(/^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/.test("256.256.256.256")); // false

6. 匹配URL地址

正则表达式:/^((ht|f)tps?):\/\/[\w\-]+(\.[\w\-]+)+([\w\-\.,@?^=%&:\+#]*[\w\-\@?^=%&\/\+#])?$/
说明:匹配URL地址格式,支持http、https、ftp协议。

示例:

console.log(/^((ht|f)tps?):\/\/[\w\-]+(\.[\w\-]+)+([\w\-\.,@?^=%&:\+#]*[\w\-\@?^=%&\/\+#])?$/.test("https://www.example.com/path/to/page")); // true
console.log(/^((ht|f)tps?):\/\/[\w\-]+(\.[\w\-]+)+([\w\-\.,@?^=%&:\+#]*[\w\-\@?^=%&\/\+#])?$/.test("example.com")); // false

7. 匹配汉字

正则表达式:/^[\u4e00-\u9fa5]+$/
说明:匹配包含一个或多个汉字的字符串。

示例:

console.log(/^[\u4e00-\u9fa5]+$/.test("中文汉字")); // true
console.log(/^[\u4e00-\u9fa5]+$/.test("ABC汉字123")); // false

8. 匹配邮政编码

正则表达式:/^\d{6}$/
说明:匹配中国大陆地区的邮政编码,包含6位数字。

示例:

console.log(/^\d{6}$/.test("100000")); // true
console.log(/^\d{6}$/.test("1000000")); // false

9. 匹配身份证号码

正则表达式:/^\d{15}(\d{2}[0-9xX])?$/
说明:匹配中国大陆地区的身份证号码,包含18位数字或15位数字加一个字母X。

示例:

console.log(/^\d{15}(\d{2}[0-9xX])?$/.test("11010119900307235X")); // true
console.log(/^\d{15}(\d{2}[0-9xX])?$/.test("11010119900307235Y")); // false

10. 匹配日期格式

正则表达式:/^\d{4}-\d{1,2}-\d{1,2}$/
说明:匹配标准的日期格式,格式为yyyy-mm-dd,其中月份和日期的数字位数不超过2。

示例:

console.log(/^\d{4}-\d{1,2}-\d{1,2}$/.test("2022-08-01")); // true
console.log(/^\d{4}-\d{1,2}-\d{1,2}$/.test("2022-08-1")); // true
console.log(/^\d{4}-\d{1,2}-\d{1,2}$/.test("2022-8-1")); // true
console.log(/^\d{4}-\d{1,2}-\d{1,2}$/.test("22-08-01")); // false

11. 匹配非负整数

正则表达式:/^\d+$/
说明:匹配非负整数,包含0和正整数。

示例:

console.log(/^\d+$/.test("123")); // true
console.log(/^\d+$/.test("-123")); // false

12. 匹配正整数

正则表达式:/^[1-9]\d*$/
说明:匹配正整数,不包含0。

示例:

console.log(/^[1-9]\d*$/.test("123")); // true
console.log(/^[1-9]\d*$/.test("0")); // false

13. 匹配非正整数

正则表达式:/^((-\d+)|(0+))$/
说明:匹配非正整数,包含0和负整数。

示例:

console.log(/^((-\d+)|(0+))$/.test("-123")); // true
console.log(/^((-\d+)|(0+))$/.test("123")); // false

14. 匹配整数

正则表达式:`/^(-?\d+)$/
说明:匹配包含一个或多个整数的字符串,包括正、负整数和0。

示例:

console.log(/^(-?\d+)$/.test("123")); // true
console.log(/^(-?\d+)$/.test("-123")); // true
console.log(/^(-?\d+)$/.test("0")); // true

15. 匹配浮点数

正则表达式:`/^(-?\d+)(.\d+)?$/
说明:匹配包含一个或多个浮点数的字符串,包括正、负浮点数和整数。其中小数部分可以省略。

示例:

console.log(/^(-?\d+)(\.\d+)?$/.test("123.45")); // true
console.log(/^(-?\d+)(\.\d+)?$/.test("-123.45")); // true
console.log(/^(-?\d+)(\.\d+)?$/.test("0.123")); // true
console.log(/^(-?\d+)(\.\d+)?$/.test("123.")); // true
console.log(/^(-?\d+)(\.\d+)?$/.test("123")); // true
console.log(/^(-?\d+)(\.\d+)?$/.test("abc")); // false

注意:上述正则表达式仅供参考,具体使用时需要结合实际情况进行调整。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:15个常用的javaScript正则表达式(收藏) - Python技术站

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

相关文章

  • ASP初学者常犯的几个错误(ZT)

    ASP初学者常犯的几个错误(ZT)攻略 引言 ASP(Active Server Pages)是一种用于创建动态网页的服务器端脚本语言。初学者在学习ASP时,常常会犯一些错误。本攻略将详细讲解几个初学者常犯的错误,并提供相应的解决方案。 错误1:未正确设置ASP文件的扩展名 ASP文件的扩展名应为.asp,但有些初学者可能会将其保存为.html或其他扩展名。…

    other 2023年8月15日
    00
  • web.config使用方法指南

    Web.config使用方法指南 什么是Web.config文件 Web.config文件是ASP.NET应用程序中的主配置文件,它包含了应用程序所需的所有配置信息,常见的配置如连接字符串、Session配置、认证和授权配置等。 在ASP.NET应用程序中,Web.config文件通常存放在应用程序根目录下,当应用程序启动时,ASP.NET会自动将Web.c…

    other 2023年6月25日
    00
  • Android如何实现时间线效果(下)

    标题: Android如何实现时间线效果(下) 正文:本文是Android如何实现时间线效果的下篇文章。 一、实现原理 本篇文章会针对上篇文章的时间线效果基础进行进一步完善。主要思路是通过RecyclerView来实现数据的绑定和动态的添加,通过ItemDecoration实现时间轴效果的绘制,通过LayoutManager实现数据的布局。主要的步骤包括以下…

    other 2023年6月27日
    00
  • arm编译器fromelf使用说明

    ARM编译器fromelf使用说明 fromelf是ARM编译器提供的一个命令行工具,用于将ARM二进制文件转换为其他格式,如ELF、COFF、HEX、BIN。本文将细讲解fromelf的使用方法及实例,并提供两个示例说明。 1. 安装fromelf fromelf是ARM编译器自的工具,因此无需单独安装。只需安装ARM编译器即可使用fromelf。 2. …

    other 2023年5月8日
    00
  • office 2016官网下载地址 office2016破解版下载

    Office 2016官网下载地址及破解版下载攻略 1. Office 2016官网下载地址 要下载Office 2016的官方版本,可以按照以下步骤进行: 打开浏览器,访问Microsoft官方网站:https://www.microsoft.com。 在网站的搜索栏中输入\”Office 2016\”,然后按下回车键。 在搜索结果中,找到并点击\”Off…

    other 2023年8月4日
    00
  • Android实现多级列表中的新建功能

    Android实现多级列表中的新建功能攻略 1. 概述 在Android应用中实现多级列表的新建功能,可以通过以下步骤完成: 创建数据模型:定义用于表示多级列表的数据模型,包含必要的属性和方法。 设计界面:创建用于显示多级列表的界面,包括列表视图和新建按钮。 实现适配器:创建适配器类,用于将数据模型与界面进行绑定。 处理新建事件:在新建按钮的点击事件中,添加…

    other 2023年8月26日
    00
  • thinkphp5实现无限级分类

    下面是“ThinkPHP5实现无限级分类”的完整攻略: 1. 前置知识 在实现无限级分类之前,我们需要了解一些基础知识: 数据库表设计 在实现无限级分类时需要使用到数据库表,我们需要在设计表时注意以下两个字段: id:表示记录的唯一标识符,通常为自增长的整型。 pid:表示当前记录所属的父级记录的标识符,如果当前记录是顶级记录,则 pid 的值为 0。 递归…

    other 2023年6月27日
    00
  • mysqltinyint范围

    以下是关于MySQL中TINYINT类型的范围的完整攻略: TINYINT类型的范围 TINYINT是MySQL中的一种整数类型,它占用1个字节(8位),可以存储范围为-128到127的整数。如果使用UNSIGNED关键字,可以存储范围为0到255的整数。 示例1:创建TINYINT类型的列 以下是一个示例,演示如何在MySQL中创建一个TINYINT类型的…

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