2013-05-10 116 views

回答

12

您需要轉義+,因爲它是正則表達式中的一個特殊字符,意思是「以前的一個或多個字符」。 /+/中沒有以前的字符,所以正則表達式不能編譯。

soql = soql.replace(/\+/g, " "); 
//or 
soql = soql.replace(/[+]/g, " "); 
+0

使用'/ \ ++/g'應該有助於提高性能 – Ian 2013-05-10 15:37:17

5

嘗試逸出+

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

在正則表達式的+實際上意味着 「一個或多個前面的表達式(或組)的」。轉義它告訴你想要一個文字加號(「+」)。

更多information on quantifiers可用,如果你谷歌它。您可能還想查看Mastering Regular Expressions書。

相關問題