İki String
im var, str1
ve str2
. Büyük/küçük harfi göz ardı ederek str2
nin str1
içinde yer alıp almadığını nasıl kontrol edebilirim?
toLowerCase()` yöntemini kullanabilirsiniz:
public boolean contains( String haystack, String needle ) {
haystack = haystack == null ? "" : haystack;
needle = needle == null ? "" : needle;
// Works, but is not the best.
//return haystack.toLowerCase().indexOf( needle.toLowerCase() ) > -1
return haystack.toLowerCase().contains( needle.toLowerCase() )
}
O zaman kullan diyelim:
if( contains( str1, str2 ) ) {
System.out.println( "Found " + str2 + " within " + str1 + "." );
}
Kendi yönteminizi oluşturarak onu yeniden kullanabileceğinize dikkat edin. Böylece, birisi indexOf
yerine contains
kullanmanız gerektiğini söylediğinde, değiştirmeniz gereken yalnızca tek bir kod satırı olacaktır.
Ben olsam String sınıfının bir parçası olan contains ve toUpper
yöntemlerinin bir kombinasyonunu kullanırdım. Bir örnek aşağıdadır:
String string1 = "AAABBBCCC";
String string2 = "DDDEEEFFF";
String searchForThis = "AABB";
System.out.println("Search1="+string1.toUpperCase().contains(searchForThis.toUpperCase()));
System.out.println("Search2="+string2.toUpperCase().contains(searchForThis.toUpperCase()));
Bu geri dönecek:
Search1=true
Search2=false