2011-08-18 101 views
-2

我需要做一个正则表达式,如果值小于10那么它应该提醒一些错误消息。我怎么能使用正则表达式来做到这一点。我正在学习正则表达式,所以对此没有多少了解。请帮忙?javascript的正则表达式

+9

你不能只是'如果(值<10)'? – Vache

+4

这看起来不像是正则表达式的适用用法...正则表达式用于模式匹配,而不用于值检查。 – Tejs

+0

没有必要使用正则表达式来进行数字比较操作,比如这样。见Vache的解决方案。 –

回答

2

为了检查一个值(可能是你的意思是数字)是否小于10我没有看到该正则表达式是适当的。

if (myValue < 10) { 
    doSomething(); 
} 

正则表达式主要用于字符串模式操作,不是像这样的数字操作。

2

我会敦促你使用正常的JavaScript数学为此。正则表达式用于处理字符串,而不是数字。您真正需要的是这样的:

if (val < 10) { 
    alert(message); 
} 

但是,如果必须使用这个正则表达式,这应该工作:

/^(\+?0*|-\d*)\d(\.\d+)?$/ 

它接受任何正数0-9,或任何负数,忽略前导零和任何小数位。

-1

可以前或使用正则表达式如下

\b[0-9]{1}\b|-\b[0-9]+\b 

第一部分|用于在字边界中查找从0到9的数字,第二部分在OR |之后用于捕捉数字。

你需要用多行和全局标志来标记正则表达式。

+0

这将检查该值是否大于10,即如果它大于10,则它将提示错误消息。我需要的是,如果用户输入的值小于10 – rubyist

+0

,则提醒错误消息此正则表达式将标记所有小于10的数字,正则表达式的左边部分负责处理0到9之间的数字,正则表达式的左边部分照顾-ve数字。完整的正则表达式是:\\ b [0-9] {1} \ b | - \ b [0-9] + \ b/gm –

+0

在正则表达式中,{1}总是冗余的。这是暗示的。 –