正则表达式以一种模式搜索数字或浮点数

时间:2015-04-18 10:24:43

标签: regex

我需要一个正则表达式来接受整数或浮点数而不是任何其他字符 比如int ex:28128和float两个小数精度ex:123123.00或123213.05 ...

我有整数和浮动[单独]如下

var numbers_only = /^[0-9]+$/;
var decimal_only =  /^[0-9]+\.[0-9]+$/;

所以如何将其合并为一个...所以我可以接受整数和浮点数(2位小数)......

2 个答案:

答案 0 :(得分:3)

使用可选组。

^\d+(?:\.\d+)?$
如果输入字符串中有任何内容,

(?:\.\d+)?将匹配小数部分。非捕获组后的?使该组成为可选组。

两位小数。

^\d+(?:\.\d{2})?$

DEMO

答案 1 :(得分:0)

您始终可以使用|(OR)运算符合并多个模式:

/^([0-9]+|[0-9]+\.[0-9]+)$/