字符串最多15个字符,仅由数字组成,字符串中的任何位置都应至少有两个单字符大小的空格。
很容易找到仅用于数字的解决方案,我很难找到添加空格的条件。
我尝试搜索最常见的正则表达式问题,但无法找到类似的内容。
编辑:
附加条件
答案 0 :(得分:1)
您可以使用此正则表达式:[0-9\s]{2,15}
在Java代码中,检查是否有三个部分用空格分隔:
String input =...;
if (input.matches("[0-9\\s]{2,15}") && (input.split(" ").length == 3) ) {
System.out.println("valid input");
}
编辑:前导和结束空格,不允许连接的空格
答案 1 :(得分:1)
我想你的要求,这样的事情会起作用:
\d+(\s\d+){2,}
但是您需要单独检查长度(例如input.length() <= 15
)。
这句话说:
这可确保字符串中的所有空格不在空格之前或之后,并且至少有两个空格。它还可以防止空间处于开头或结尾,并且还允许空格中的两个以上。