一尘不染

JavaScript如何替换所有出现的字符串?

javascript

我有这个字符串:

"Test abc test test abc test test test abc test test abc"

正在做:

str = str.replace('abc', '');

似乎只删除了abc上面字符串中的第一个匹配项。

如何替换 所有 出现的内容?


阅读 433

收藏
2020-04-22

共1个答案

一尘不染

注意:请勿在对性能有要求的代码中使用此代码。

作为简单文字字符串的正则表达式的替代方法,您可以使用

str = "Test abc test test abc test...".split("abc").join("");

一般模式是

str.split(search).join(replacement)

在某些情况下,它过去比使用replaceAll和正则表达式要快,但是在现代浏览器中,情况似乎不再如此。

结论:如果您有性能至关重要的用例(例如,处理数百个字符串),请使用Regexp方法。但是对于大多数典型的用例来说,不必担心特殊字符是值得的。

2020-04-22