Javascript正则表达式模式,不带货币值,不带货币

Javascript正则表达式模式,不带货币值,不带货币,javascript,regex,Javascript,Regex,我正在寻找一个javascript正则表达式模式,它允许插入或注册这些类型的金额 5 5.1 5.10 5 500,000 500,000.1 500,000.10 但这些数字不应小于0。我设法找到了模式,但我想省略“$”。我只想要数字、逗号和点 var x = 5000; var a = "5,000,000" var y = "$5,,,000,000" var z = "500,000" var c = "c231" console.log(x," Valid", /^\$?\d+(,\

我正在寻找一个javascript正则表达式模式,它允许插入或注册这些类型的金额

5
5.1
5.10
5
500,000
500,000.1
500,000.10
但这些数字不应小于0。我设法找到了模式,但我想省略“$”。我只想要数字、逗号和点

var x = 5000;
var a = "5,000,000"
var y = "$5,,,000,000"
var z = "500,000"
var c = "c231"
console.log(x," Valid", /^\$?\d+(,\d{3})*(\.\d*)?$/.test(x))
console.log(a," Valid", /^\$?\d+(,\d{3})*(\.\d*)?$/.test(a))
console.log(y," Valid", /^\$?\d+(,\d{3})*(\.\d*)?$/.test(y))
console.log(z," Valid", /^\$?\d+(,\d{3})*(\.\d*)?$/.test(z))
console.log(c," Valid", /^\$?\d+(,\d{3})*(\.\d*)?$/.test(c))

删除
\$?

/^\d+(,\d{3})*(\.\d*)?$/

var x=5000;
var a=“5000000”
变量y=“$5,,,000000”
var z=“500000”
var c=“c231”
var d=“1…0.00”
var e=“…”
var f=“1.00,,,”
var validRegEx=/^\d+(,\d{3})*(\.\d*)?$/;
console.log(x,“有效”,validRegEx.test(x))
console.log(a,“有效”,validRegEx.test(a))
console.log(y,“有效”,validRegEx.test(y))
console.log(z,“有效”,validRegEx.test(z))
console.log(c,“有效”,validRegEx.test(c))
控制台日志(d,“有效”,validRegEx.test(c))
控制台日志(e,“有效”,validRegEx.test(c))

console.log(f,“Valid”,validRegEx.test(c))
删除
\$?

/^\d+(,\d{3})*(\.\d*)?$/

var x=5000;
var a=“5000000”
变量y=“$5,,,000000”
var z=“500000”
var c=“c231”
var d=“1…0.00”
var e=“…”
var f=“1.00,,,”
var validRegEx=/^\d+(,\d{3})*(\.\d*)?$/;
console.log(x,“有效”,validRegEx.test(x))
console.log(a,“有效”,validRegEx.test(a))
console.log(y,“有效”,validRegEx.test(y))
console.log(z,“有效”,validRegEx.test(z))
console.log(c,“有效”,validRegEx.test(c))
控制台日志(d,“有效”,validRegEx.test(c))
控制台日志(e,“有效”,validRegEx.test(c))

console.log(f,“Valid”,validRegEx.test(c))
根据我对问题的评论,新代码将

var x = 5000;
var a = "5,000,000"
var y = "$5,,,000,000"
var z = "500,000"
var c = "c231"
console.log(x," Valid", /^\d+(,\d{3})*(\.\d*)?$/.test(x))
console.log(a," Valid", /^\d+(,\d{3})*(\.\d*)?$/.test(a))
console.log(y," Valid", /^\d+(,\d{3})*(\.\d*)?$/.test(y))
console.log(z," Valid", /^\d+(,\d{3})*(\.\d*)?$/.test(z))
console.log(c," Valid", /^\d+(,\d{3})*(\.\d*)?$/.test(c))

根据我对问题的评论,新代码将

var x = 5000;
var a = "5,000,000"
var y = "$5,,,000,000"
var z = "500,000"
var c = "c231"
console.log(x," Valid", /^\d+(,\d{3})*(\.\d*)?$/.test(x))
console.log(a," Valid", /^\d+(,\d{3})*(\.\d*)?$/.test(a))
console.log(y," Valid", /^\d+(,\d{3})*(\.\d*)?$/.test(y))
console.log(z," Valid", /^\d+(,\d{3})*(\.\d*)?$/.test(z))
console.log(c," Valid", /^\d+(,\d{3})*(\.\d*)?$/.test(c))
试一试

试一试


删除\$?从RegEx新的RegEx将是/^\d+(,\d{3})*(\.\d*)?$/我的答案有用吗?如果它接受了,请考虑删除它。从RegEx新的RegEx将是/^\d+(,\d{3})*(\.\d*)?$/我的答案有用吗?如果接受的话,考虑接受它。