我正在尝试在 C# 中构建具有以下特征的正则表达式。
- 字符串以零个或多个数字开头
- 后跟字母“ABC”
- 跟在字符串的末尾
我试过了
\d?ABC
但仍然匹配 ZABC
、ABCD
、2ZABC
。
有什么建议吗?
最佳答案
你需要anchors表示字符串的开始和结束:
^\d?ABC$
此外,?
表示 0 或 1。0 或更多是 *
:
^\d*ABC$
另请注意,根据 .NET 中的事件 Culture
\d
可以解释为“任何 Unicode 数字字符”。如果您真的只想要 ASCII 数字,请使用字符类:
^[0-9]*ABC$
tutorial该网站上是学习正则表达式的重要资源。
关于C# 正则表达式忽略末尾的额外数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13884988/