使用 JavaScript 替换字符串中的所有数字
要替换字符串中的所有数字,请调用 replace() 方法,将全局匹配所有数字的正则表达式作为第一个参数传递给它,将替换字符串作为第二个参数传递给它。
replace() 方法将返回一个新字符串,其中所有匹配项都被提供的替换项替换。
const str = 'a1 b2 c3';
const replaced = str.replace(/[0-9]/g, '!');
console.log(replaced); // ?️ a! b! c!
我们将以下参数传递给 String.replace 方法:
- 我们要在字符串中匹配的正则表达式。 出于我们的目的,所有 0-9 的数字
- 每个匹配项的替换字符串
方括号 [] 称为字符类。 示例中的字符类匹配 0 到 9 范围内的所有数字。
我们使用 g (全局)标志是因为我们想要匹配字符串中出现的所有数字,而不仅仅是第一次出现的数字。
如果大家在阅读正则表达式方面需要帮助,请查看我们的正则表达式教程。
replace
方法不会更改原始字符串,它会返回一个替换了一个或多个匹配项的新字符串。 字符串在 JavaScript 中是不可变的。
该示例使用感叹号作为替换,但是我们可以使用适合您的用例的任何替换字符串,例如 一个下划线。
const str = 'a1 b2 c3';
const replaced = str.replace(/[0-9]/g, '_');
console.log(replaced); // ?️ a_ b_ c_
等效的正则表达式是使用 \d 特殊字符。
const str = 'a1 b2 c3';
const replaced = str.replace(/\d/g, '!');
console.log(replaced); // ?️ a! b! c!
\d 特殊字符匹配任何数字 0-9。 它实现与 [0-9] 相同的结果。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。