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

4

我有一个字符串,只有在它由逗号分隔且长度为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)

你在提问之前有没有尝试过任何方法? - Botz3000
1个回答

9

假设输入始终为大写:

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

如果除了验证输入之外,您还想提取数据,则可以对逗号进行简单的拆分(无需使用正则表达式拆分):
if (reggie.IsMatch(inputString))
    string[] values = string.Split(',');

这就是为什么他们称呼你为快手 :) (好吧,虽然花了你9分钟,但我比你慢了14秒...) - Rawling
你也很快。 :) - Quick Joe Smith
如果我只想验证大写字母怎么办? - Ali Hasan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接