正则表达式 - 检查字符串是以零 + 空格开头还是单独以零开头

本文关键字:开头 单独 空格 正则表达式 检查 字符串 | 更新日期: 2023-09-27 18:31:45

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

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

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

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

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

没有办法改进它?或者,它有错误吗?

非常感谢您的帮助。

环境

  • VS 2010 .net 4

正则表达式 - 检查字符串是以零 + 空格开头还是单独以零开头

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

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

^0('s+.*)?$

似乎第二个字符是导致匹配失败的原因。如果第二个字符是句点,则不匹配;否则匹配。 ?!说如果匹配的内容成功,则整个匹配失败。因此,如果第二个字符是句点,它将失败。

^0(?!'.).*