繁体   English   中英

正则表达式只接受字母后跟逗号

[英]Regex to accept only letters followed by comma

我需要将用户输入限制为“wordA,wordB,wordC,wordD,wordE ......”等格式。 它必须以单词开头(不区分大小写)并以单词结尾,每个单词之间只接受一个逗号。 所以它应该是这样的:

   Match match = Regex.Match(tbx.text, @"//expression here",
    RegexOptions.IgnoreCase);

if (match.Success)
{
    //do sth
}

任何人都可以帮我解决这个问题吗?

假设输入是允许单个单词(即没有逗号)的单词列表。

^[a-z]+(?:,[a-z]+)*$

因为,你已经在使用RegexOptions.IgnoreCase所以不需要像[a-zA-Z]那样定义类

Match match = Regex.Match(input, @"^[0-9-]*$");

^指匹配应在输入的起点开始,在$它应该在输入的结束而终止。

*表示(仅)0或更多数字或短划线应该在那里(使用+代替1或更多)。

尝试这个:

^([a-zA-Z]+,?)+[a-zA-Z]$

从头到尾,必须以一个字母开头,可能后跟一个逗号(对于单个单词条目),并且可以重复任意次; 还必须以信件结尾。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM