Javascript 正则表达式删除000并保留数字、减号和逗号
我在javascript中有如下字符串-Javascript 正则表达式删除000并保留数字、减号和逗号,javascript,regex,Javascript,Regex,我在javascript中有如下字符串- var input="-213,23.3 '000 Millions"; 我希望输出为“-213,23.3” 我使用下面的正则表达式来实现这一点- input.replace(/[^0-9.,'-]/g, "") 但我得到了输出“-213,23.3'000” 我还想删除'000(正如我所说,这是千的表示) 谁能告诉我如何删除'000并保留数字、'-'(减号)、、(逗号)吗 提前谢谢 注:我只想在现有正则表达式中为'000添加一个条件,因为我无法更改此
var input="-213,23.3 '000 Millions";
我希望输出为“-213,23.3”
我使用下面的正则表达式来实现这一点-
input.replace(/[^0-9.,'-]/g, "")
但我得到了输出“-213,23.3'000”
我还想删除'000(正如我所说,这是千的表示)
谁能告诉我如何删除'000并保留数字、'-'(减号)、、(逗号)吗
提前谢谢
注:我只想在现有正则表达式中为'000添加一个条件,因为我无法更改此正则表达式
input.replace(/^(-?[\d,]+(?:\.\d+)?).*$/, "$1")
或者作为正则表达式的附加条件:
input.replace(/[^0-9.,'-]+|'\d+/g, "")
或
为什么是正则表达式?使用
input.split(“”)[0]
,因为没有必要每次我都在数字和'000之间获得一个空格(抱歉!忘记提到:P)好的,请尝试input.match(/(.+)')/)[1]
@Tushr在endI中有一个额外的空间,我不能改变这个正则表达式-那么你怎么能在这个正则表达式中添加一个“条件”?请张贴完整的相关代码。如果没有空间,这些代码都不能工作;结果:-213,23.3'000
var input="-213,23.3 '000 Millions";
var a = input.replace(/\ ?\'(.*?)$/, '');
console.log(a);
var a = input.replace(/\ ?\'[\s\S]+$/, '');