从字符串中删除所有数字
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
方法:
- 我们想要在字符串中匹配的正则表达式– 在我们的例子中,我们想要匹配从 0 到 9 的所有数字
- 每个匹配项的替换字符串– 出于我们的目的,一个空字符串,因为我们想删除所有数字
通过用空字符串替换每个数字,我们实现了从字符串中删除所有数字的目标。
[]
正则表达式的括号部分称为字符类。在我们的字符类中,我们匹配 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]
.
进一步阅读
- 检查 String 是否包含 JavaScript 中的任何字母
- 检查 String 是否包含 JavaScript 中的特殊字符
- 检查 String 是否以 JavaScript 中的 Substring 开头
- 检查 String 是否以 JavaScript 中的 Substring 结尾
- 检查 String 是否以 JS 中的多个值之一开头
- 如何在 JavaScript 中计算字符串中的单词数
- 检查 String 是否仅包含 JavaScript 中的拉丁字母
- 检查 String 在 JavaScript 中是否全部为大写
- 在 JavaScript 中检查字符串的第一个字母是否为大写
- 在 JavaScript 中获取字符串中每个单词的首字母
- 使用 JavaScript 从字符串中删除最后一个单词