判断是否全同的数字字母可以用正则,连续数字这个正则就不是很擅长了。
不会java,以下是用js做的第一个正则,你可以把正则拿出来到java里用。
^([0-9a-zA-Z])\1+$ 这个对于一个字母是认为不全同的,如果你要把一个字母也认为全同则用
^([0-9a-zA-Z])\1*$
输入:
用java做 简单,代码如下:
public class Test {
private static String s = "ABC";
private static String str = "876";
private static boolean isSameCharacter(String s){
//如果不区分大小写,可以添加下面这句
//s = s.toUpperCase();或者 s = s.toLowerCase();
String character = s.substring(0,1);
String replace = "";
String test = s.replace(character, replace);
if("".equals(test))
return true;
return false;
}
private static boolean isContinuityCharacter(String s){
boolean continuity = true;
char[] data = s.toCharArray();
for(int i=0; i
int b = Integer.parseInt(data[i+1]+"");
continuity = continuity && (a+1 == b || a-1 == b);
}
return continuity;
}
public static void main(String[] argv){
System.err.println(isSameCharacter(s));
System.err.println(isContinuityCharacter(str));
}
}
正则不是万能的,你这个应该是用正则加程序来实现
首先判断是否是数字可以用 "\d+" 这个正则表达式来判断
其次,再用for循环来判断是相同,还是连续