Skip to main content
 首页 » 编程设计

C# 正则表达式包含 []

2024年01月29日23luoye11

我正在使用正则表达式来验证字符串输入是否包含长度为 6 到 20 的字母,并且字符串内部存在带整数的方括号。 像这样的东西:

ABC[15]随便

我知道在不使用正则表达式的情况下检查字符串长度会更好,但我仍然在寻找带整数的括号。

我设法做了什么:

\[([0-9\-]+)] 

正在通过 regex tester .net 进行测试

这是合适的解决方案吗?

欢迎任何帮助

请您参考如下方法:

我会去

^(?=[\w\[\]]{6,20}$)[A-Z]+\[\d+\][A-Z]+$ 

参见 this working example on Regex101

解释

  1. ^ 字符串开头
  2. (?=[\w\[\]]{6,20}$) 后跟长度介于 6 到 20 个字符之间的字符串 ({6,20}) 仅包含字母数字字符 (\w) 和方括号 (\[\]),后跟字符串结尾 ($)
  3. [A-Z]+\[\d+\][A-Z]+ 实际模式 - 括号中的 1 个或多个数字被字符包围
  4. $ 字符串结尾