我有这个字符串:
"Test abc test test abc test test test abc test test abc"
正在做:
str = str.replace('abc', '');
似乎只删除了abc上面字符串中的第一个匹配项。
abc
如何替换 所有 出现的内容?
注意:请勿在对性能有要求的代码中使用此代码。
作为简单文字字符串的正则表达式的替代方法,您可以使用
str = "Test abc test test abc test...".split("abc").join("");
一般模式是
str.split(search).join(replacement)
在某些情况下,它过去比使用replaceAll和正则表达式要快,但是在现代浏览器中,情况似乎不再如此。
replaceAll
结论:如果您有性能至关重要的用例(例如,处理数百个字符串),请使用Regexp方法。但是对于大多数典型的用例来说,不必担心特殊字符是值得的。