2010-11-24 23 views
0

Iam正在寻找可接受1和250之间的值的正则表达式。不应接受以下值(“'!@#$)$()(_ +)和-1-2-3-4等正则表达式使用户输入特定的一组值

/^[1-9][0-9][0-9]?$/ 
+1

这是什么语言?如果你只是对/ int进行投射/解析并进行数值比较,那么范围检查(用我能想到的每种语言)通常会更容易。正则表达式不是很擅长。 – eldarerathis 2010-11-24 04:06:12

+0

@eldarethis:这是Javascript表单验证,我们正在使用不同的表单插件,它接受正则表达式 – Someone 2010-11-24 04:10:50

+0

请注意,客户端验证不应该替换,只有补充,服务器端验证。 – Ether 2010-11-24 18:19:34

回答

2
/^250|(?:2[0-4]|1[0-9])[0-9]|[1-9][0-9]?$/ 
0

这可以很容易地使用数字比较操作完成

但是,如果你想为它一个正则表达式在这里你去:

^(?:250|2[0-4][0-9]|[01]?[0-9][0-9]?)$ 

请注意,这允许前导零,如果你不想要他们,你可以看到Ignacio的答案。

相关问题