Javascript:替换字符串中的空格的妙处

时间:2018-12-03 11:48:42

标签: javascript regex whitespace

如果变量包含该值,则无法删除字符串中的空格:

var groupingSeparator = ' ';
'123 456'.replace( new RegExp( groupingSeparator ), '' );

>>> as result: '123 456'

但是我可以在没有单独变量的情况下做到这一点:

'123 456'.replace( new RegExp( ' ' ), '' );

>>> as result: '123456'

我需要此变量,因为它也可能包含另一个值(逗号,指向并继续)。 那么,为什么我们在“等于”代码示例中有不同的行为?如何解决?

编辑: 因此它在本地对我不起作用,因为groupSeparator变量的值不是简单的空格。是'\ u00A0'。

1 个答案:

答案 0 :(得分:0)

使用\s作为分隔符-它与空格匹配。请注意,您需要添加“ \”才能与RegExp构造函数一起使用。我还添加了g标志(全局)来替换给定字符串中的所有匹配项

var groupingSeparator = '\\s';
var text = '123\u00a0456'
console.log("before", text)
var result = text.replace( new RegExp( groupingSeparator , "g"), '' );
console.log("after", result)