js正则表达式之exec方法讲解

下面是关于“js正则表达式之exec方法讲解”的完整攻略。

exec方法介绍

正则表达式是一个非常重要的知识点,使用正则表达式可以进行文本匹配和替换,exec() 是Regexp对象的一个方法,用于在字符串中执行正则表达式的搜索,并返回包含结果的数组。如果没有找到匹配,它将返回 null。

该方法的语法如下所示:

regexp.exec(str)

其中 regexp 为需要匹配的正则表达式, str 为需要进行匹配的字符串。

这个方法会在字符串中寻找第一个匹配项。如果找到,它将返回匹配项组成的数组,否则返回 null。数组会包含匹配结果和一些其他属性。

exec方法返回值

当exec方法进行匹配时,如果找到匹配项,则返回一个数组,数组的第一个元素是匹配到的字符串,之后的元素是每个括号所匹配到的字符串。

举个例子:

const pattern = /(\d{4})-(\d{2})-(\d{2})/;
const result = pattern.exec("2021-07-26");
console.log(result);

以上代码会输出如下结果:

["2021-07-26", "2021", "07", "26", index: 0, input: "2021-07-26", groups: undefined]

可以看到,返回的数组包含了匹配到的字符串及其每个小括号中的内容,而后面的 index 和 input 表示匹配的字符串在原字符串中的位置和原字符串本身。

exec方法示例

示例一

下面的代码展示了对字符串中所有连续数字的匹配和输出。

const pattern = /\d+/g;
const str = "hello 123 world 456!";
let result = pattern.exec(str);
while(result !== null){
  console.log(result[0]);
  result = pattern.exec(str);
}

上述代码使用了 /pattern/g 的形式,其中 g 代表全局匹配,即对整个字符串全部匹配。输出结果如下:

123
456

示例二

下面的代码展示了对价格字符串的匹配和提取价格部分。

const pattern = /(\$[0-9]+\.[0-9]{2})/g;
const str = "Apples cost $2.99 and oranges cost $1.99";
let result = pattern.exec(str);
while(result !== null){
  console.log(result[0]);
  result = pattern.exec(str);
}

上述代码使用了 /pattern/g 的形式,其中 g 代表全局匹配,即对整个字符串全部匹配。输出结果如下:

$2.99
$1.99

以上两个示例展示了 exec 方法的具体用法,希望可以帮助你更好地理解它的使用方式。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js正则表达式之exec方法讲解 - Python技术站

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

相关文章

  • JavaScript 字符串新增方法 trim() 的使用说明

    当处理用户输入或文本数据时,JavaScript 字符串经常需要去除其前后的空格,此时可以使用字符串 trim() 方法。本文将详细介绍 trim() 方法的使用说明。 一、语法 trim() 方法没有参数。它会从字符串的两端去除空格,并返回去除空格后的字符串。 二、示例 以下两个示例演示了该方法的使用。 示例1 const str = " hel…

    JavaScript 2023年5月28日
    00
  • JavaScript中使用ActiveXObject操作本地文件夹的方法

    在使用JavaScript操作本地文件夹的时候,我们可以使用ActiveXObject对象来实现。具体操作步骤如下: 1.创建ActiveXObject对象 我们可以使用以下代码来创建ActiveXObject对象: var fso = new ActiveXObject("Scripting.FileSystemObject"); 这样…

    JavaScript 2023年5月27日
    00
  • JavaScript SetInterval与setTimeout使用方法详解

    JavaScript SetInterval与setTimeout使用方法详解 SetInterval 语法 setInterval(function, delay, param1, param2, …) 参数 function:必需。要调用的函数或代码串。 delay:必需。该函数调用之间的时间间隔(以毫秒计)。 param1、param2和更多参数:…

    JavaScript 2023年6月10日
    00
  • JavaScript 有用的代码片段和 trick

    当提到 JavaScript 有用的代码片段和 trick 时,我们通常指的是 JavaScript 开发者经常用到的一些技巧和代码片段。这些技巧和代码片段可以帮助我们更好地优化我们的代码并增强我们的开发能力。以下是一些实用的技巧和代码片段: 1. JavaScript 中的链式调用 链式调用是一种使代码更加紧凑、易于读取的技巧。它允许我们在一个方法的输出上…

    JavaScript 2023年6月10日
    00
  • 基于PHP+Ajax实现表单验证的详解

    基于PHP+Ajax实现表单验证的详解 简介 本文将详细介绍如何使用PHP和Ajax实现表单验证。 在网站开发过程中,表单验证是非常必要且基础的一步。其中,前端表单验证可以提高用户体验,减少无效提交;后台表单验证则可以有效防范恶意攻击,保障网站安全。 在这篇文章中,我们将介绍如何使用PHP和Ajax实现后台表单验证。 表单验证方式 在开发过程中,表单验证分为…

    JavaScript 2023年6月10日
    00
  • javascript 兼容各个浏览器的事件

    JS 兼容各个浏览器的事件主要是针对旧版浏览器(如IE 8及以下版本)的事件处理进行兼容。 一、事件绑定兼容处理 旧版浏览器中经常使用 attachEvent 方法绑定事件,而现代浏览器则使用 addEventListener 方法。因此需要对这两种方法进行不同的处理以实现跨浏览器兼容。 function addEventHandler(element, e…

    JavaScript 2023年6月10日
    00
  • 通过循环优化 JavaScript 程序

    通过循环优化 JavaScript 程序是我们在开发过程中常用的一种优化手段,这种手段主要通过循环和处理数据来实现程序的优化。下面我们将为大家提供一份完整的攻略,让大家更好的了解如何通过循环优化 JavaScript 程序。 步骤 1:确定程序瓶颈 在进行循环优化之前,我们首先需要确定程序瓶颈,这样才能有的放矢的进行优化。通过使用 Chrome 开发者工具中…

    JavaScript 2023年5月27日
    00
  • Javascript中作用域的详细介绍

    Javascript中作用域的详细介绍 Javascript中的作用域是指变量的可见范围,也就是在代码中访问变量的能力。在Javascript中,有全局作用域和局部作用域之分。在全局作用域中声明的变量,可以被程序中的任何其他代码所访问,而在局部作用域中声明的变量,只能被函数内部代码所访问。 全局作用域 全局作用域是在所有函数的外部声明变量的作用域。在全局作用…

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