首页 > 解决方案 > 如何在 C# 中的必填字段验证器中验证正则表达式条件中的字符串

问题描述

如何验证 c# 输入框中的以下输入组合?

卷/期 -> 1/1 或 1/1S 或 1/1(S) 或 1/S1

我已经尝试过以下正则表达式条件分别工作正常以及如何结合两个正则表达式模式或两个条件以匹配任何模式

[a-zA-Z0-9]+/[a-zA-Z0-9]+

[a-zA-Z0-9]+/[0-9]+\([a-zA-Z]+\)

标签: regex

解决方案


您可以将[0-9A-Za-z]+其用作第二个字符类而不是仅匹配数字,并且可以选择匹配括号之间的部分。

[a-zA-Z0-9]+/[0-9A-Za-z]+(?:\([a-zA-Z]+\))?
  • [a-zA-Z0-9]+/[0-9A-Za-z]+匹配 a /-zA-Z0-9 中 1+ 个字符之间的部分
  • (?:非捕获组
    • \([a-zA-Z]+\)匹配(1+ 个字符 a-zA-Z 和)
  • )?关闭组并使其成为可选

正则表达式演示


推荐阅读