c# - 正则表达式 - 检查字符串是否以零 + 空格或单独的零开头

标签 c# regex

我有这个数学正则表达式:

  • 字符串以零+空格+其他任何内容开头
  • 字符串为零

    "0 fkvjdm" // Must Match
    "0" // Must match
    "0.56" // NOT match
    

这是我正在使用的正则表达式:

^([0]$|([0]\s+.))

有什么办法可以改善吗?或者,它有错误吗?

非常感谢您的帮助。

环境

  • VS 2010.net 4

最佳答案

  • 首先,没有必要把0放在字符类中。
  • 其次,您的正则表达式在空格后不会匹配超过一个字符。因为您在正则表达式的第二部分 dot - . 上没有任何量词。要匹配空格后的更多字符,您应该使用 .*(0 或更多)或 .+(1 或更多)。

为了提高清晰度,您可以在此处使用可选量词:

^0(\s+.*)?$

关于c# - 正则表达式 - 检查字符串是否以零 + 空格或单独的零开头,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18877396/

相关文章:

c# - 在 emgu cv 中使用矩阵

c# - 优点/缺点 MemoryStream.Position 或 MemoryStream.Seek

c# - 有没有办法从使用 C# 阻止文件的进程中获取 PID?

c# - 使用可选值改进正则表达式

python - 正则表达式查找嵌套括号之间的文本

python - 正则表达式 - 如何选择其中包含 '-' 的单词?

java - 正则表达式在java中的两个表达式之间提取字符串

c# - 在 .NET 2.0 (C#) 中加密/解密 cookie

c# - 为什么静态类的Type属性在C#中显示为 "abstract"?

c# - 无效的正则表达式模式