从 JavaScript 中的字符串中删除所有数字

从字符串中删除所有数字

Remove all Numbers from a String in JavaScript

要从字符串中删除所有数字,请调用该replace()方法,将匹配所有数字的正则表达式作为第一个参数传递给它,将空字符串作为第二个参数传递给它。replace方法将返回一个不包含任何数字的新字符串。

索引.js
const str = 'a1 b2 c3'; const noNumbers = str.replace(/[0-9]/g, ''); console.log(noNumbers); // 👉️ a b c

我们将以下参数传递给
String.replace
方法:

  1. 我们想要在字符串中匹配的正则表达式– 在我们的例子中,我们想要匹配从 0 到 9 的所有数字
  2. 每个匹配项的替换字符串– 出于我们的目的,一个空字符串,因为我们想删除所有数字
通过用空字符串替换每个数字,我们实现了从字符串中删除所有数字的目标。

[]正则表达式的括号部分称为字符类。在我们的字符类中,我们匹配 0-9 范围内的所有数字。

我们使用g(global) 标志是因为我们想要匹配字符串中出现的所有数字,而不仅仅是第一次出现的数字。

如果您在阅读正则表达式方面需要帮助,请查看

来自 MDN的
正则表达式速查表。这绝对是最好的。

replace方法不会更改原始字符串,它会返回一个替换了一个或多个匹配项的新字符串。字符串在 JavaScript 中是不可变的。

一个等价的正则表达式,就是使用\d特殊字符。

索引.js
const str = 'a1 b2 c3'; const noNumbers = str.replace(/\d/g, ''); console.log(noNumbers); // 👉️ a b c

特殊字符匹配 0-9 范围内的\d任意数字。它实现了与我们之前使用[0-9].

进一步阅读

发表评论