这是一个重复的帖子,但要求稍有不同,我想知道一个只允许十进制数的正则表达式。在这里找到了类似的解决方案。
regular expression to allow only integer and decimal 但解决方案中有一个逗号。
我在Regex exp中根本不需要comman。
/^[0-9]+([\,\.][0-9]+)?$/g; answer found on the site
我根据帖子中的解释来运用我的逻辑。
/^[0-9]+([\.][0-9]+)?$/g; My modification
还有其他方法可以解决这个问题吗?
答案 0 :(得分:3)
这是正确的致电方式:
var regex = new RegExp(/^[0-9]*([\.][0-9]+)?$/g);
console.log(regex.test('0.85')); // true
console.log(regex.test('0,85')); // false
console.log(regex.test('.35')); // true
console.log(regex.test('')); // false
console.log(regex.test('.')); // false
console.log(regex.test('4')); // true
我建议对正则表达式进行一些修改,我已将第一个块的多重性更改为zero or more
,因此.35
将被视为有效,正如您在上面的评论中所述。
Here是一名掠夺者。