JS正则表达式详解[收藏]

yizhihongxing

JS正则表达式详解[收藏]

正则表达式概述

正则表达式(Regular Expression)是一种文本模式,可以用于字符串的搜索、匹配和替换操作。它在计算机科学中广泛应用,涉及到文本处理、自然语言处理、网络安全等领域。

JS正则表达式对象

在JS中,可以通过正则表达式对象来实现对字符串的操作。正则表达式对象的常用属性和方法如下:

常用属性

  • source:获取正则表达式对象的文本表述。
  • global:判断正则表达式对象是否全局匹配。
  • ignoreCase:判断正则表达式对象是否忽略大小写。
  • multiline:判断正则表达式对象是否启用多行模式。

常用方法

  • test():判断字符串中是否包含与正则表达式对象匹配的内容。
  • exec():在字符串中查找匹配正则表达式的内容,返回一个包含匹配结果的数组,若未查找到则返回null。

正则表达式语法

元字符

元字符 含义
. 任意单个字符
\ 转义字符,用来表示元字符
[] 字符集,匹配其中任意字符
[^] 否定字符集,不匹配其中任意字符
() 捕获组,用来提取子字符串
| 或,匹配两侧任意一项
^ 匹配开头
$ 匹配结尾

量词

量词 含义
* 匹配前一个字符0次或多次
+ 匹配前一个字符1次或多次
? 匹配前一个字符0次或1次
{n} 匹配前一个字符n次
{n,m} 匹配前一个字符n次到m次
{n,} 匹配前一个字符n次以上

贪婪模式与非贪婪模式

贪婪模式:尽可能多地匹配字符串

非贪婪模式:尽可能少地匹配字符串

在量词后添加问号即为非贪婪模式。例如:

  • .* 贪婪匹配任意数量的字符
  • .*? 非贪婪匹配任意数量的字符

JS正则表达式示例

示例一:判断字符串中是否包含手机号码

let phoneReg = /^1[3|4|5|6|7|8|9][0-9]{9}$/;
let phoneNum = "13912345678";

if(phoneReg.test(phoneNum)){
   console.log("该字符串中包含合法的手机号码");
}else{
   console.log("该字符串中不包含合法的手机号码");
}

示例二:提取字符串中的数字

let str = "今天的天气是27℃";
let numReg = /(\d+)/;

let result = numReg.exec(str);

if(result){
   console.log("该字符串中的数字是:" + result[1]);
}else{
   console.log("该字符串中不包含数字");
}

结语

正则表达式是一种强大的文本处理工具,可以在文本处理中发挥重要作用。以上就是JS正则表达式的详细攻略,包括对象的属性和方法、正则表达式语法、以及示例说明。希望这篇攻略能够对你的正则表达式学习有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JS正则表达式详解[收藏] - Python技术站

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

相关文章

  • Javascript中定义方法的另类写法(批量定义js对象的方法)

    当我们定义一个JavaScript对象时,其属性值不仅可以是数据类型,也可以是函数类型。在对象属性中定义方法时,常见的是采用“键值对”的方式,即将方法名作为键,方法本身作为值。但是在JavaScript中,还有一种另类的定义方法的方式,即“批量定义js对象的方法”。 以下是实现该方法的步骤: 1.首先定义一个对象: var obj = {}; 2.然后利用f…

    JavaScript 2023年6月10日
    00
  • javascript正则表达式和字符串RegExp and String(一)

    下面是关于“javascript正则表达式和字符串RegExp and String(一)”的完整攻略: 简介 JavaScript 正则表达式是匹配模式,它们可用于搜索字符串中的特定模式,从而帮助我们实现强大的文本匹配和处理功能。RegExp 和 String 对象是 JavaScript 中正则表达式常用的操作对象。String 对象提供了一些常用的方法…

    JavaScript 2023年5月28日
    00
  • C#使用正则表达式抓取网站信息示例

    下面我将为你详细讲解“C#使用正则表达式抓取网站信息示例”的完整攻略。 1. 背景 当我们需要从网站上获取特定信息时,我们可以使用正则表达式来找到需要的内容。在 C# 中,可以使用 System.Text.RegularExpressions 命名空间来实现正则表达式的匹配。 2. 正则表达式基础知识 在使用正则表达式之前,我们需要了解一些基本概念: 字符集…

    JavaScript 2023年5月19日
    00
  • vue3中关于路由hash与History的设置

    下面是关于Vue3中路由hash与History的设置的详细攻略: 1. 路由设置 在Vue3中使用路由需要先安装vue-router,使用以下命令进行安装: npm install vue-router@4 1.1 history模式 如果使用history模式,则路由使用的是浏览器的history.pushState和history.replaceSta…

    JavaScript 2023年6月11日
    00
  • 改版了网上的一个js操作userdata

    改版了网上的一个js操作userdata,意味着我们要掌握如何在 JavaScript 中使用 localStorage API 操作本地存储空间。下面将从以下四个方面讲解完整攻略: localStorage 的概念和用法 基础操作:setItem 和 getItem 复杂数据结构的存储和读取 注意事项 1. localStorage 的概念和用法 loca…

    JavaScript 2023年6月11日
    00
  • Javascript实现时间倒计时功能

    下面是Javascript实现时间倒计时功能的完整攻略: 1. 实现方式 实现时间倒计时功能的方式有很多种,这里介绍一种常用的方式:通过计算时间差来实现。 获取目标时间:可以通过以下方式获取目标时间(即倒计时结束时间): const targetTime = new Date(‘2022-01-01T00:00:00’).getTime(); // 以时间戳…

    JavaScript 2023年5月27日
    00
  • jquery validate和jquery form 插件组合实现验证表单后AJAX提交

    下面我将为您详细讲解如何使用jquery validate和jquery form插件完成验证表单后的AJAX提交。 步骤一:引入jQuery及相关插件 首先,在页面中引入jQuery和相关插件文件,这里需要演示的插件是jquery validate和jquery form,引用代码如下: <script src="https://code.…

    JavaScript 2023年6月10日
    00
  • JavaScript中this的用法实例分析

    使用JavaScript中的this关键字可以引用当前对象,这在许多情况下是非常有用的。在本文中,我们将学习this的用法实例分析。 什么是this? this关键字是JavaScript中的一种关键字,它被用来引用当前对象。简单来说,this关键字是一个指向当前正在执行的代码所在的对象的指针。 在对象中,this指向该对象本身。在函数中,this指向其调用…

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