2

我想用空格替换 JavaScript 字符串中的所有 + 符号。基于此线程Fastest method to replace a character in a string 的所有实例和此线程How to replace all dots in a string using JavaScript 我这样做:

soql = soql.replace(/+/g, " ");

但这给出了:

SyntaxError: invalid quantifier

有什么想法我该怎么做吗?

4

2 回答 2

12

您需要转义,+因为它是正则表达式中的一个特殊字符,意思是“一个或多个前一个字符”。中没有前一个字符/+/,因此正则表达式无法编译。

soql = soql.replace(/\+/g, " ");
//or
soql = soql.replace(/[+]/g, " ");
于 2013-05-10T15:26:13.077 回答
5

尝试转义+

soql = soql.replace(/\+/g, " ");

+则表达式中的实际意思是“一个或多个先前的表达式(或组)”。转义它表明您想要一个文字加号(“+”)。

如果您在 google 上搜索,可以获得有关量词的更多信息。您可能还想查看Mastering Regular Expressions这本书。

于 2013-05-10T15:26:16.893 回答