正则表达式逗号分隔字符串验证

时间:2012-10-19 11:25:58

标签: c# regex

我有一个字符串,只有当它有2个字符并且用逗号分隔时才有效。

AD,AC,AN,JP (valid)
AD (valid) if user enter only one it must be validate

如果是逗号以外的数字或任何其他字符或其长度大于2,则必须返回无效。

AD,12,AN,JP (invalid)
AAD,12,AN,JP (invalid)
AA,CC,ANA,JP (invalid)
AA,#C,AA,JP (invalid)

1 个答案:

答案 0 :(得分:9)

这假设输入始终为大写:

var reggie = new Regex(@"^[A-Z]{2}(,[A-Z]{2})*$");

如果在验证输入之前,您想要提取数据,则可以对逗号执行简单拆分(不需要正则表达式拆分):

if (reggie.IsMatch(inputString))
    string[] values = string.Split(',');