标签: regex asp.net-mvc data-annotations
我正在尝试使用Data Annotation正则表达式来匹配以下格式。
34
38-30
100,25-30
4-5,5,1-5
基本上,表达式应该只允许数字, - (破折号)和,(逗号)
我试过以下但是无法让它发挥作用。
[RegularExpression(@"(0-9 .&'-,]+)", ErrorMessage ="Lot numbers are invalid.")]
答案 0 :(得分:4)
我认为您的用例是一个CSV列表的数字,或范围的数字(标识为数字后跟一个破折号后跟另一个数字)。我们可以使用以下正则表达式:
[0-9]+(?:-[0-9]+)?(,[0-9]+(?:-[0-9]+)?)*
此正则表达式匹配一个数字,后跟一个可选的短划线和另一个数字,该数量后跟逗号和另一个类似的术语,任意次。
在下面的演示中,我在正则表达式的两边添加了锚点。是否需要这样做取决于您打算如何使用该模式。
答案 1 :(得分:1)
这是^[0-9,-]*$。看看 demo 。
^[0-9,-]*$