我有一个字符串,我想验证它是否匹配这个正则表达式:
正则表达式应该是 3 个大写字母后跟“-”和两个或多个单词然后是 ()
示例:
BEN - Two Words (m738783)
TST - THREE Words test (a187817)
我试过这个正则表达式
Regex userRegex = new Regex(@"^[A-Z]3-[A-Za-z]+([A-Za-z0-9])$");
但是它不起作用,有人可以帮忙吗?
我是正则表达式的新手。
谢谢。
最佳答案
您犯了以下错误:
- 忘记
{}
3
(量词)。 - 忘记在
-
周围留出可选空间 (\s*
)。 - 括号没有转义。
- 忘记为括号内的字符类添加
+
量词。
这是正则表达式:
@"^[A-Z]{3}\s*-\s*[A-Za-z]+(\s+[A-Za-z]+)+\s+\([A-Za-z0-9]+\)$"
关于c# - 设置一个c#正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32093076/