我遇到JavaScript正则表达式的问题。我想匹配实数数字形式1到5. Precission是两位数字。我的代码是,但它不起作用。在JavaScript中匹配数字范围的正则表达式
function validate_prosjek(nmb)
{
var pattern= new RegExp(/[1-4]\.[0-9][0-9]|5\.00/);
return pattern.test(nmb);
}
它承认大于5
我遇到JavaScript正则表达式的问题。我想匹配实数数字形式1到5. Precission是两位数字。我的代码是,但它不起作用。在JavaScript中匹配数字范围的正则表达式
function validate_prosjek(nmb)
{
var pattern= new RegExp(/[1-4]\.[0-9][0-9]|5\.00/);
return pattern.test(nmb);
}
它承认大于5
您需要的“锚”与^
和$
你的正则表达式匹配的分别字符串的开头和结尾,较高的实数:
var pattern = /^([1-4]\.[0-9][0-9]|5\.00)$/;
您还需要转义.
,因为它是正则表达式中的一个特殊字符,如果正则表达式已在/.../
synax中,则不需要调用new RegExp
。
@MikeM好的,所以它 - 我发现了一个测试用例,它没有工作。 – Alnitak 2013-04-23 22:21:50
/^[1-4]\.[0-9][0-9]|^5\.00$/ – 2013-04-23 22:23:32
Final version.Work罚款。如果第二个数字是5并且数字大于10(如15.00 25.00等),那么你的失败 – 2013-04-23 22:24:03
http://www.regular-expressions.info/floatingpoint.html – 2013-04-23 22:12:11
请注意,没有任何与jQuery有关,这是所有Javascript功能。这些信息可以帮助您搜索下次要查找的内容。 – 2013-04-23 22:16:23
适用于我的机器。经过http://regexpal.com/ – 2013-04-23 22:16:56