4
我想出了这个正则表达式:正则表达式验证逗号分隔的年份范围
(?:[0-9]{4}-([0-9]{4}|[?]))+
对于这样的文字:
1993-2000,2004-?
来捕获块中的正则表达式= [0-9]{4}-([0-9]{4}|[?])
我有变化如:
1993-? 1993-2000 1993-2000,2004-? 1993-2000,2004-2010
等。
我的正则表达式捕获块[1993-2000]
和[2004-?]
,但不是逗号。
我发现很难的是声明第二,第三等事件的逗号应该是强制性的。
那么,什么不应该被允许是:
1993-2000, 1993-20002007-? ?-2000
可能这可以允许到0:1993-2000,2004,2007,2010-?
有人可以帮助我获得关于第二和后续出现的条件逗号这最后的理解?
我发现这个正则表达式,我适应了一下:
^([0-9]{4}(-([0-9]{4}|[?]))?)(,([0-9]{4}(-([0-9]{4}|[?]))?))*$
似乎这样的伎俩,但是这是最好的版本?