正则表达式用于8位数字表达式,不带连字符或字母

时间:2013-08-23 03:00:48

标签: regex

目前,我有这个:

Regex folderRegex = new Regex(@"^.{8})([0-9]+)?[1-9]+([0-9]+)?$");

我需要字符串正好有8位数字。没有连字符或字母。我的正则表达式会这样做吗?

3 个答案:

答案 0 :(得分:8)

我认为你需要一个非常简单的模式。

^\d{8}$

简短说明

  • 在字符串^
  • 的开头处断言位置
  • 匹配单个数字0..9 \d
    • 恰好8次{8}
  • 断言字符串末尾的位置(或字符串末尾的换行符之前的位置,如果有的话)$

答案 1 :(得分:1)

您也可以使用具有分组范围的字符类来执行相同的操作。

Regex folderRegex = new Regex(@"^[0-9]{8}$");

正则表达式:

[0-9]{8}    any character of: '0' to '9' (8 times)

答案 2 :(得分:-1)

假设您的问题中给出的内容是您不希望您的八位数字符串以0开头,则应执行以下操作:

^[1-9]\d{7}$