Regexp找到以数字开头的字符串长度

时间:2016-03-18 06:31:22

标签: java regex pattern-matching

应该是什么样的正则表达式来找到以数字开头的字符串长度。我尝试了([0-9].*){5,}这个并且它不起作用。

我想检查字符串是否以数字开头且长度是否大于5

4 个答案:

答案 0 :(得分:0)

  

检查字符串是否以数字开头且长度是否大于5

您可以使用此正则表达式:

\b\d\S{5,}

正则表达式分手:

\b     - word boundary
\d     - match a digit
\S{5,} - match any non-space character 5 or more times

在Java中,正则表达式是:

Pattern p = Pattern.compile("\\b\\d\\S{5,}");

答案 1 :(得分:0)

您不需要输入“。*”。这意味着匹配任何连续的重复。

试试[0-9] {5,}

答案 2 :(得分:0)

  

我想检查字符串是否以数字开头且长度是否大于5

因此,第一个字符必须是数字:[0-9]
并且它必须包含至少4个字符,总共5个:.{4,}

if (text.matches("[0-9].{4,}")) {
    // YAY
}

请参阅regex101了解演示。

答案 3 :(得分:0)

([0-9].*){5,}很好,但你正在寻找:
[0-9]一个数字 .*任何角色0直到无尽的时间这至少5次

如果您有机会[0-9].{5,}获得以下内容:
[0-9]任意数字.任意字符5次或以上

你有可能[0-9]\d然后你得到\d.{5,}
在前面添加\b以使shure成为一个单词的开头然后你得到以下内容:
\b\d.{5,}