Java 检查特定字符串是否包含任何小写/大写字母

Java 检查特定字符串是否包含任何小写/大写字母,java,string,Java,String,有没有办法检查特定的字符串是否包含任何小写/大写字母 例如: 使用这种语法,它只适用于完全相同的字符串。我怎样才能为任何形式的“测试”创造条件,比如:“测试”、“测试”、“测试”等等 强制haystack(您搜索的字符串)使用小写,然后搜索小写指针(您搜索的字符串) 您可以使用这样的正则表达式[a-z]+ 这将检查a-z中是否有小写字符 Pattern p = Pattern.compile("[a-z]+"); Matcher m = p.matcher("tEST"); if(m.match

有没有办法检查特定的字符串是否包含任何小写/大写字母

例如:

使用这种语法,它只适用于完全相同的字符串。我怎样才能为任何形式的“测试”创造条件,比如:“测试”、“测试”、“测试”等等

强制haystack(您搜索的字符串)使用小写,然后搜索小写指针(您搜索的字符串)


您可以使用这样的正则表达式
[a-z]+
这将检查a-z中是否有小写字符

Pattern p = Pattern.compile("[a-z]+");
Matcher m = p.matcher("tEST");
if(m.matches()) {
// string contains lowercase
}

如何将myStr转换成小写,然后检查。大概是这样的:

String myStr = "test";
if (myStr.toLowerCase().contains("test") { 
      //Do stuff
}

您可以使用equalsIgnoreCase()方法。 此方法比较两个字符串并忽略大小写

String a = "Test";

if("test".equalsIgnoreCase(a)) //returns true
{ 
  //do stuff
}
解决方案:

String name1="test";

System.out.println(name1.toLowerCase().equals(name1));    //true
System.out.println(name1.toUpperCase().equals(name1));    //false
逻辑是 如果第一条语句为true,则表示该字符串只有小写字母。 如果第二条语句为true,则表示该字符串只有大写字母。
如果两者都为假,则表示两者混合

您可以使用此正则表达式检查字符串是否包含任何大写字母

String regex = ".*[A-Z].*";
if (myStr.matches(regex)) {
   // Write your code here
}

请您解释一下反对票的原因好吗?这不是我说的,但我猜这与使用
equals
有关。OP希望进行不区分大小写的比较/包含(不清楚),而不仅仅是确定字符串是否大小写混合。为什么要投反对票?请解释。问题是检查字符串是否包含“任何”小写字符。但是,您的答案会检查整个字符串是否为小写。
String name1="test";

System.out.println(name1.toLowerCase().equals(name1));    //true
System.out.println(name1.toUpperCase().equals(name1));    //false
String regex = ".*[A-Z].*";
if (myStr.matches(regex)) {
   // Write your code here
}