我有一个React小部件,可以让你输入价格。我将键入的文本放在一个regex.test()中,以确保数字中只允许有数字和1个小数。但是,我使用的正则表达式不允许使用小数点作为第一个字符(例如-> .05)。我当前的正则表达式是
`/^(\d+\.?\d{0,9}|\.\d{1,9})$/`我尝试在前面添加一个可选的\.?,但不起作用。谢谢你的帮忙!
发布于 2019-09-12 10:09:43
您可以使用
/^\d*(?:\.\d+)?$/
const testFunc = (str) =>{
return str.length > 0 && /^\d*(?:\.\d+)?$/.test(str)
}
console.log(testFunc(''))
console.log(testFunc('.123'))
console.log(testFunc('1'))
console.log(testFunc('1.123'))
console.log(testFunc('123.123.123'))
https://stackoverflow.com/questions/57896643
复制相似问题