JavaScript温顾知新-通过字符串创建正则表达式

153 阅读2分钟

这是我参与11月更文挑战的第3天,活动详情查看:2021最后一次更文挑战

前言

前文我们学习了JavaScript 中的知识点小结更文列表, 本文来记录一些日常开发中的提高码字效率的实用小技巧, 减少重复造轮子的重复性不必要的工作.

本文 来熟悉一下大部分同学都觉得晦涩难懂的正则表达式, 我们都知道以两个斜杠**//** 包起来的就是一个正则, 而通过函数创建一个正则也可以传递的是 字符串.

JavaScript RegExp (正则表达式)

RegExp 正则表达式 对象, 名字好长, 感觉是对对象的操作方法, 而实际上 RegExp 对象用于将文本与一个模式匹配, 来查找满足条件的内容:

创建 正则表达式对象的方法: 字面量和构造函数

可以通过两种方法来创建一个 RegExp 对象:

但是基本的语法就是使用 两个/包围的内容: `/^juejin.cn?/

  1. 一种是字面量
  2. 另一种是构造函数。

1. 通过字面量创建

就是 由斜杠(/)包围而不是引号包围。

2. 构造函数的字符串参数

这一种方法大部分人都不台了解吧! 是由引号而不是斜杠包围起来的:

以下三种表达式都会创建相同的正则表达式:

/ab+c/i; // 字面量形式
new RegExp('ab+c', 'i'); // 首个参数为字符串模式的构造函数
new RegExp(/ab+c/, 'i'); // 首个参数为常规字面量的构造函数

正则表达式使用注意:

当我们使用构造函数创造一个正则对象时, 需要注意使用常规的字符转义规则(在前面加反斜杠 \

// 比如,以下是等价的:
let re = /\w+/;
let re = new RegExp("\\w+");

更多相关更文阅读

加油! 在掘金养成总结更文的好习惯

Buy Less by Know More!

学习, 记录, 积累 是一个漫长的过程!也是一个慢慢成长的过程, 在掘金养成更文更是总结的好习惯, 加油!