如何更换'。'用空字符串

时间:2018-05-22 02:38:59

标签: javascript regex

我想用空字符串替换字符串中的点(。),如下所示:

1.234 => 1234 然而,正则表达式使它完全为空。



let  x = "1.234";
let y = x.replace(/./g , "");
console.log(y);




enter image description here

然而,当我像这样替换逗号(,)时,它的效果很好:

 let p=x.replace(/,/g , "");

在第一种情况下出现了什么问题,即用空字符串替换点(。)?如何解决?

我正在角度使用它。

3 个答案:

答案 0 :(得分:4)

试试这个:

let x: string = "1.234";
let y = x.replace(/\./g , "");

Dot .是Regex中的一个特殊字符。如果您需要更换点本身,则需要在其前面添加反斜杠转义\.

在此处阅读有关正则表达式特殊字符的详情:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions

答案 1 :(得分:1)

使用/[.]/g代替/./g.匹配any characterwhitespaces

以外的console.log('3.14'.replace(/[.]/g, '')); // logs 314



{{1}}




答案 2 :(得分:0)

另一种方法(另一篇文章已经用正则表达式回答)是使用split创建一个数组,然后用join加入数组的元素

let x = "1.234";
// splitting by dot(.) delimiter
// this will create an array of ["1","234"]
let y = x.split('.').join('');  // join will join the elements of the array
console.log(y)