设置ac#正则表达式

ben*_*ben 2 c# regex

我有字符串,如果它匹配这个正则表达式我想要翻译:

正则表达式应为3个大写字母后跟" - "和两个或多个单词然后()

示例:

BEN - Two Words (m738783)
TST - THREE Words test (a187817)
Run Code Online (Sandbox Code Playgroud)

我试过这个正则表达式

Regex userRegex = new Regex(@"^[A-Z]3-[A-Za-z]+([A-Za-z0-9])$");
Run Code Online (Sandbox Code Playgroud)

但它不起作用,有人可以帮忙吗?

我是正则表达式的新手.

谢谢.

Ale*_*rov 6

你犯了以下错误:

  • {}3(量词).
  • 忘了允许\s*周围的可选空格()-.
  • 括号没有被转义.
  • 忘了+在括号内添加字符类的量词.

这是正则表达式:

@"^[A-Z]{3}\s*-\s*[A-Za-z]+(\s+[A-Za-z]+)+\s+\([A-Za-z0-9]+\)$"
Run Code Online (Sandbox Code Playgroud)