我有一个价格字符串,即:Rs. 1.2345,99
我需要删除所有字母和所有句号后面的字母。
因此,Rs. .1245.3445. s. 34. ffgg.
的字符串会产生.1245.3445 34.
我的预期结果为1.2345,99
我应该在Rs. .954
的情况下补充一点,我也期望得到.954
的结果
这就是我的尝试:
string.replace(/[^0-9+-]|(?!^)[+-]/g, '');
但它会完成所有小数。正则表达式不是我的强项。
我需要这个来处理任何字符串,而不是特定的示例字符串。
答案 0 :(得分:1)
最好将其分解为多次替换。
首先删除字母后面的字母和句点,然后你可以清理空格:
var x = "Rs. 1.2345,99";
x = x.replace(/[\a-zA-Z]+[\.]*/g,"");
x = x.replace(/\s/g, "");
console.log(x);
请注意,您只提及字母和句点,如果您还需要删除其他字符,请在[\a-zA-Z]
部分中添加。
答案 1 :(得分:0)
这应该
var str = "Rs. 1.2345,99";
str = str.slice(4, str.length);
console.log(str);