1

我如何验证输入应该是两种指定格式的文本框..格式是

例如:1-5 或 1 2 3 4 5

请参阅我只想以上述两种方式输入数字(仅限数字)。像 1-5(中间没有空格)或像 1 2 3 4 5(中间只有一个空格)。我如何验证和避免除了这两种格式的条目使用正则表达式?

请帮忙

4

2 回答 2

3
^(\d+)(-(\d+)|( \d+)+)?$

上述正则表达式应符合您的要求

当然,这是javascript!

var regex = /^(\d+)(-(\d+)|( \d+)+)?$/;

验证:

if (regex.test(formValue))
{
    //Valid textbox value
}
于 2012-09-26T09:40:09.363 回答
2
^(\d+-\d+)|(\d+(\s\d+)*)$

让我解释:

  • ^锚定到字符串的开头
  • 然后我们|在以下之间进行交替:
    • \d+-\d+匹配 1 位或多位数字,后跟连字符,后跟 1 位或多位数字
    • \d+(\s\d+)*匹配一个数字后跟 0 个或多个空格和数字
  • $锚定到字符串的末尾
于 2012-09-26T09:41:42.750 回答