应该是什么样的正则表达式来找到以数字开头的字符串长度。我尝试了([0-9].*){5,}
这个并且它不起作用。
我想检查字符串是否以数字开头且长度是否大于5
答案 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,}