RegEx for ABC_XYZ_PPQRST-AA

时间:2018-02-21 08:27:33

标签: c# regex

我需要创建一个正则表达式来测试下面的数据类型,

xxx_yyy_zzz-aaa

我能够验证前两个_下划线,但无法附加 - 连字符。

@"[a-zA-Z0-9]_[a-zA-Z0-9]_[a-zA-Z0-9]s/[^-][a-zA-Z0-9]"

我正在使用c#。上面的字符数只是一个例子

1 个答案:

答案 0 :(得分:2)

xxx_yyy_zzz-aaa字符串表示格式为{alphanum}_{alphanum}_{alphanum}-{alphanum}{alphanum}部分的模式已经由您编写。

接下来,您需要quantify每个字母数字部分,因为只有[A-Za-z0-9]匹配单个字母字符。使用+匹配一个或多个匹配项,或{3}匹配仅匹配3个,或{3,}匹配3个或更多匹配。

这不是全部,因为您希望整个字符串与模式匹配。因此,您需要anchors^来匹配字符串的开头和$(或\z)以匹配字符串的结尾。

因此,我建议

@"^[a-zA-Z0-9]+_[a-zA-Z0-9]+_[a-zA-Z0-9]+-[a-zA-Z0-9]+\z"

请参阅regex demo