在Java中,如何检查字符串是否包含子字符串(忽略大小写)?
我有两个 s 和 .如何检查 是否包含在 中,忽略大小写?String
str1
str2
str2
str1
我有两个 s 和 .如何检查 是否包含在 中,忽略大小写?String
str1
str2
str2
str1
str1.toUpperCase().contains(str2.toUpperCase())
UPD:
最初的答案是使用方法。但是,正如一些人正确指出的那样,Unicode中存在一些例外,最好使用 。因为:toLowerCase()
toUpperCase()
有些语言知道一个大写变体的多个小写变体。
怎么样?matches()
String string = "Madam, I am Adam";
// Starts with
boolean b = string.startsWith("Mad"); // true
// Ends with
b = string.endsWith("dam"); // true
// Anywhere
b = string.indexOf("I am") >= 0; // true
// To ignore case, regular expressions must be used
// Starts with
b = string.matches("(?i)mad.*");
// Ends with
b = string.matches("(?i).*adam");
// Anywhere
b = string.matches("(?i).*i am.*");