可能重复:
Simple regular expression for a decimal with a precision of 2?
我想知道正则表达式,它只允许javascript中从0到无穷大的任何长度的整数和十进制数。 任何人都可以帮助我完成这项工作
答案 0 :(得分:40)
此代码可以:
var str = "1.2"
var regexp = /^[0-9]+([,.][0-9]+)?$/g;
var result = regexp.test(str);
alert(result);
其中:
/pattern/modifiers
)您应该在JavaScript中查看有关RegExp对象的链接:http://www.w3schools.com/jsref/jsref_obj_regexp.asp
关于regexp本身:
^
:字符串的开头[0-9]+
:至少一位数[,.]
:点或逗号[0-9]+
:与上述相同(xxxxx)?
:括号内的表达式是否存在$
:表达式的结尾如果你想了解更多信息,你还应该查看维基百科页面的regexp。它已经做得很好。
答案 1 :(得分:14)
试试这个
^[\d.]+$
^
- 行开头
[]
- 选择数组
\d
- 任何数字
.
- 点字符
+
- 1或多
$
- 行尾