2011-10-11 135 views
0

我使用jQuery我需要的正则表达式,请帮忙寻找这个解决方案验证以下字符串,逗号和空格分隔号和连字符隔开的字符串的正则表达式

有效的字符串,

(1)1,2,3,4,1,2-8 
(2)1,2, 3, 4, 1, 2-8 

应该还接受逗号和逗号用空格,也是数量应该是连字符隔开

我曾尝试以下的正则表达式,

^([0-9]+(-[0-9]+)?)(,([0-9]+(-[0-9]+)?))*$ 
+3

^([0-9] +( - [0-9] +)?)(\ s *,\ s *([0-9] +( - [0 -9] +)?))* $这个正则表达式为我工作 – Selwyn

+0

这是什么东西? (字符串代表什么?) –

+1

有效字符串的两个例子甚至不足以反向设计正确的正则表达式。提供10个有效字符串和10个无效字符串,或者更好地描述输入的语义。 –

回答

0

这一个适用于您发布的字符串:

var rx = new RegExp(/^\(\d\)(\d,\s*){5}\d\-\d$/); 

但是,目前还不清楚我的(1)(2)是否应该是字符串的一部分。如果不是,则使用:

var r2 = new RegExp(/^(\d,\s*){5}\d\-\d$/); 
// a digit, followed by a comma, followed by some whitespace, repeated five times 
// with a digit-hyphen-digit sequence at the end