java或者正则表达式如何判断字符串不是相同数字或者字母?不能全是连续数字?(最好是java)

2024-12-01 05:08:26
推荐回答(3个)
回答1:

判断是否全同的数字字母可以用正则,连续数字这个正则就不是很擅长了。

不会java,以下是用js做的第一个正则,你可以把正则拿出来到java里用。

^([0-9a-zA-Z])\1+$ 这个对于一个字母是认为不全同的,如果你要把一个字母也认为全同则用

^([0-9a-zA-Z])\1*$








    输入:
    


回答2:

用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; iint a = Integer.parseInt(data[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));
}

}

回答3:

正则不是万能的,你这个应该是用正则加程序来实现

首先判断是否是数字可以用 "\d+" 这个正则表达式来判断

其次,再用for循环来判断是相同,还是连续