我想测试这种输入格式:
[可选的负号] 2个数字 [可选的“.”和一个数字],如下所示:
-34
或 -34.5333
或 34.53333
或 34
在 JavaScript 中。
这是我编写的代码,但它无法正常工作!
/^(-)\d{2}(\.d\{1})$/
有人可以帮助我吗?
我想测试这种输入格式:
[可选的负号] 2个数字 [可选的“.”和一个数字],如下所示:
-34
或 -34.5333
或 34.53333
或 34
在 JavaScript 中。
这是我编写的代码,但它无法正常工作!
/^(-)\d{2}(\.d\{1})$/
有人可以帮助我吗?
试试这个正则表达式:
/^-?\d{2}(\.\d+)?$/
这个正则表达式可以匹配任何有效的整数。
/^0$|^-?[1-9]\d*(\.\d+)?$/
/^-?[1-9]\d{0,1}(\.[1-9]{1})?$/
这个匹配项包括2.1、21.4、3、90等数字...
function validate(val){
return isNaN(val)?false:(Math.abs(Math.floor(val)).toString().length==2);
}
以下简单的HTML代码将验证两位数的正负数字以及小数点后可选的最少1位数字。
JS代码:
function validateNum() {
var patForReqdFld = /^(\-)?([\d]{2}(?:\.\d{1,})?)$/;
var value = document.getElementById('txtNum').value;
if(patForReqdFld.test(value)) {
alert('Valid Number: ' + value);
} else {
alert('Invalid Number: ' + value);
}
}
HTML 代码:
<label>Enter Number: </label>
<input type="text" id="txtNum" onBlur="validateNum()"/>
尝试使用这个正则表达式:
/^-?[0-9]{2}(?:\.[0-9]+)?$/
试试这个:
/^(-)?\d{2}(\.\d+)?$/
-?\d{2}[.]?\d*
你的正则表达式(/^(-)\d{2}(.d{1})$/)的作用是:
首先以负号开头,然后正确地要求两位数字,接着是".",可以匹配任何字符,但应该使用"\"将它限制为符号,最后是一位数字。
正确的示例代码应该是:
var str = '-34.23';
pat=/^\-?\d{2}(\.(\d)*)?$/g;
str.match(pat);
'-00.23',
-0` - gion_13