Javascript里的两种使用正则的方法

yizhihongxing

当我们需要在JavaScript中进行字符串匹配、替换或者提取操作时,常常需要用到正则表达式。在JavaScript中,我们可以使用两种不同的方法来使用正则表达式。

方法一:RegExp对象的方法

RegExp对象是JavaScript内置的正则表达式对象,我们可以使用它的方法来处理字符串。

1. 创建RegExp对象

我们可以使用RegExp对象的构造函数来创建一个正则表达式对象:

let reg = new RegExp('abc');

也可以使用字面量表示法来创建一样的正则表达式对象:

let reg = /abc/;

这两种写法是等价的。其中,'abc'表示我们要查找的模式。

2. RegExp对象的方法

RegExp对象提供的方法可以用来在字符串中查找、替换和提取符合指定模式的子字符串。

其中,常用的方法有:

  • test(str)

该方法用来检查字符串中是否存在指定模式的匹配。如果存在,返回true;否则返回false。

示例:

javascript
let reg = /abc/;
let str = 'abcde';
console.log(reg.test(str)); // true

  • exec(str)

该方法用来在字符串中查找指定模式的匹配,并返回一个数组。数组中存放的是匹配到的子串以及捕获分组的内容。

示例:

javascript
let reg = /ab(c)/;
let str = 'abcde';
let result = reg.exec(str);
console.log(result); // ["abc", "c", index: 0, input: "abcde", groups: undefined]
console.log(result[0]); // "abc"
console.log(result[1]); // "c"
console.log(result.index); // 0
console.log(result.input); // "abcde"

  • replace(regexp|substr, newSubStr|function)

该方法用来替换字符串中符合指定模式的子串。

示例:

javascript
let reg = /abc/;
let str = 'abcdefg';
let newstr = str.replace(reg, '123');
console.log(newstr); // "123defg"

方法二:字符串对象的方法

在字符串对象中,也提供了一些方法来调用正则表达式处理字符串。

1. 字符串的方法

常用的字符串方法有:

  • search(regexp)

该方法用来在字符串中查找指定模式的匹配。如果存在,就返回匹配的起始位置;否则返回-1。

示例:

javascript
let str = 'abcde';
let index = str.search('abc');
console.log(index); // 0

  • match(regexp)

该方法用来在字符串中查找并返回指定模式的匹配结果。返回的结果是一个数组,数组中第一个元素是匹配到的子串,后面的元素是捕获分组的内容。

示例:

javascript
let str = 'abcde';
let result = str.match(/ab(c)/);
console.log(result); // ["abc", "c", index: 0, input: "abcde", groups: undefined]
console.log(result[0]); // "abc"
console.log(result[1]); // "c"
console.log(result.index); // 0
console.log(result.input); // "abcde"

  • replace(regexp|substr, newSubStr|function)

该方法用来替换字符串中符合指定模式的子串。

示例:

javascript
let str = 'abcdefg';
let newstr = str.replace(/abc/, '123');
console.log(newstr); // "123defg"

2. 字符串对象与正则表达式结合使用

有些时候,我们需要利用字符串对象和正则表达式相互配合,来完成一些特殊的操作。

  • split(regexp|substr, limit)

该方法用来将一个字符串分割成多个子串,并将分割后的子串存入一个数组中,返回数组。

示例:

javascript
let str = '123,456,789';
let arr = str.split(',');
console.log(arr); // ["123", "456", "789"]

如果传入了正则表达式,也可以根据正则表达式进行分割:

javascript
let str = '1-2-3 , 4-5-6';
let arr = str.split(/-|\s*,\s*/);
console.log(arr); // ["1", "2", "3", "4", "5", "6"]

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Javascript里的两种使用正则的方法 - Python技术站

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

相关文章

  • 如何编写高质量 JavaScript 代码

    如何编写高质量 JavaScript 代码 JavaScript 是一种灵活、功能强大的编程语言,但有时编写高质量的代码并不容易。下面是几个技巧和指南,可以帮助你编写更好的 JavaScript 代码。 代码结构 良好的代码结构是保持代码可读性和易于维护的关键。以下是一些实施和保持良好代码结构的方式: 使用简洁的、有意义的变量名和函数名,以及明确和一致的格式…

    JavaScript 2023年5月27日
    00
  • 一篇文章弄懂js中的typeof用法

    一篇文章弄懂 JS 中的 typeof 用法 typeof 是 JavaScript 中的一个关键字,用于确定一个值的数据类型。如今,在 JavaScript 中,由于一些语言习惯的原因,被称为“类型”或“类型操作符”。了解 typeof 的使用方法对于学习和理解 JavaScript 语言非常重要。 使用 typeof 的基本语法 语法:typeof op…

    JavaScript 2023年6月11日
    00
  • Javascript中正则表达式的使用及基本语法

    下面是Javascript中正则表达式的使用及基本语法的完整攻略。 一、什么是正则表达式 正则表达式,也称为正规表示式、regex或regexp,是用于匹配字符串中模式的一种表达式。正则表达式在大多数编程语言中都是支持的,它允许我们快速地检索和替换文本。 二、正则表达式的语法 Javascript中使用正则表达式时,需要通过RegExp对象来创建和使用。其基…

    JavaScript 2023年5月19日
    00
  • javascript客户端遍历控件与获取父容器对象示例代码

    题目涉及到两个主题:JavaScript客户端遍历控件和获取父容器对象。下面,我将从以下几个方面为大家提供一份完整的攻略: JavaScript客户端遍历控件概述; 遍历控件示例说明; 获取父容器对象概述; 获取父容器对象示例说明。 1. JavaScript客户端遍历控件概述 在JavaScript中,我们经常需要访问页面中的控件对象。这些控件对象通常是通…

    JavaScript 2023年6月10日
    00
  • js 事件对象 鼠标滚轮效果演示说明

    下面是关于“js 事件对象 鼠标滚轮效果演示说明”的完整攻略。 什么是事件对象 事件对象是处理事件的一种机制,通过事件对象可以获取事件的相关信息,包括事件类型、目标元素、鼠标坐标等。 当事件发生时,浏览器会自动生成一个事件对象,可以通过参数的方式将该事件对象传递给事件处理函数,在事件处理函数中就可以访问该事件对象。 以下是事件对象的一些常见属性: type:…

    JavaScript 2023年6月10日
    00
  • 2021年值得向Python开发者推荐的VS Code扩展插件

    下面是详细讲解“2021年值得向Python开发者推荐的VS Code扩展插件”的完整攻略。 1. 简介 VS Code 是一款免费开源的轻量级编辑器,支持多种编程语言,Python 是其中之一。丰富的扩展插件使得 VS Code 更加强大,可以让开发者更加高效地编写 Python 代码。本攻略将介绍一些值得向 Python 开发者推荐的扩展插件。 2. 推…

    JavaScript 2023年5月28日
    00
  • js常用函数 不错

    当提到JavaScript编程语言时,函数是其中最重要的一部分。函数可以帮助你简化代码,提高代码的复用性。在JavaScript编程中,有很多种类型的函数,但有些函数是非常常见的,可以被广泛使用。在本文中,我将会介绍几种js常用函数,让你在编写代码时能够更加轻松自如。 1. 时间函数 时间函数在JavaScript开发中有着重要的作用,可以用来创建、解析和操…

    JavaScript 2023年5月27日
    00
  • javascript 防止刷新,后退,关闭

    防止刷新、后退和关闭网页通常可以使用 JavaScript 实现。以下是标准的 Markdown 格式文本回答。 防止刷新、后退和关闭网页的方法 防止刷新网页 要防止刷新网页,最简单的方法是使用 beforeunload 事件。在页面加载时,添加以下代码: window.addEventListener(‘beforeunload’, function(ev…

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