JavaScript正则表达式替换

简介

正则表达式是一种用来描述字符串模式的工具,它在前端开发中能够满足很多需求,比如搜索、验证、替换等。本文将重点讲解 JavaScript 正则表达式替换,包括基础概念、常用方法和实战应用。

基础概念

正则表达式语法

正则表达式语法由字符、元字符和修饰符组成。其中,字符表示匹配特定字符;元字符表示匹配特定字符类别;修饰符表示匹配次数、位置等。

替换方法

JavaScript 提供了 replace() 方法用于替换字符串中的指定内容。该方法接收两个参数:一个正则表达式作为查找规则,和一个替换值作为替换内容。replace() 方法会返回一个新字符串,原始字符串不受影响。

replace() 方法有两种使用方式:

  • 使用字符串作为替换值,每个匹配项都将被替换为该字符串。
  • 使用函数作为替换值,可以在函数中自定义替换逻辑。

常用方法

替换指定字符串

下面是一段代码,演示如何使用正则表达式替换指定字符串:

--- --- - ------ -------
--- ------- - --------
--- ---------- - -------------
--- ------ - -------------------- ------------
-------------------- -- ----- ----------

在上面的代码中,我们使用正则表达式 /world/ 匹配字符串 "hello world" 中的 "world",并将其替换为 "JavaScript"。最后打印出替换后的字符串。

替换指定字符

除了替换指定字符串外,我们还可以使用正则表达式替换指定字符。以下是一个例子:

--- --- - ------------
--- ------- - -----
--- ---------- - ----
--- ------ - -------------------- ------------
-------------------- -- ---------

在上面的代码中,我们使用正则表达式 /,/g 匹配字符串 "1,2,3,4,5" 中的所有逗号,并将其替换为 " - "。最后打印出替换后的字符串。

使用函数替换

除了使用字符串作为替换值外,我们还可以使用函数自定义替换逻辑。以下是一个例子:

--- --- - ------ -------
--- ------- - --------
--- --------- - --------------- -
  ------ --------------------
-
--- ------ - -------------------- -----------
-------------------- -- ----- -----

在上面的代码中,我们使用正则表达式 /world/ 匹配字符串 "hello world" 中的 "world",并将其替换为大写字母形式。注意,这里的替换值是一个函数,接收一个参数 match,表示匹配项。最后打印出替换后的字符串。

实战应用

去除字符串中的空格

以下是一段代码,演示如何使用正则表达式去除字符串中的空格:

--- --- - -  -----   -----  --
--- ------- - -------
--- ---------- - ---
--- ------ - -------------------- ------------
-------------------- -- ----------

在上面的代码中,我们使用正则表达式 /\s+/g 匹配字符串 " hello world " 中的所有空格,并将其替换为空字符串。最后打印出替换后的字符串。

格式化日期字符串

以下是一段代码,演示如何使用正则表达式格式化日期字符串:

--- --- - -------------
--- ------- - ---------

- ----------------------------------------------------------- --------
---------------------------------------------------------------------------------------