आप
उपयोग कर सकते हैं
org.apache.commons.lang3.StringUtils.containsIgnoreCase(CharSequence str,
CharSequence searchStr);
चेक करता है कि CharSequence में कोई खोज CharSequenc है ई मामले के बावजूद, शून्य को संभालना। केस-असंवेदनशीलता String.equalsIgnoreCase (स्ट्रिंग) द्वारा के रूप में परिभाषित किया गया है।
एक अशक्त CharSequence अवास्तविक लौटाते हैं।
यह एक regex की तुलना में बेहतर हो जाएगा regex हमेशा महंगा है के रूप में प्रदर्शन के मामले में।
आधिकारिक दस्तावेज़ के लिए, संदर्भित करने के लिए: StringUtils.containsIgnoreCase
अद्यतन:
आप लोगों के बीच कर रहे हैं जो
- अपाचे कॉमन्स पुस्तकालय का उपयोग नहीं करना चाहते हैं
- डॉन 'टी, महंगा
regex/Pattern
आधारित समाधान के साथ जाना चाहता हूँ
- ,
toLowerCase
का उपयोग करके अतिरिक्त स्ट्रिंग वस्तु बनाने के लिए
आप java.lang.String.regionMatches
public boolean regionMatches(boolean ignoreCase,
int toffset,
String other,
int ooffset,
int len)
ignoreCase
का उपयोग कर अपने स्वयं के कस्टम containsIgnoreCase
लागू कर सकते हैं नहीं करना चाहती: अगर सही है, मामले पर ध्यान नहीं देता जब पात्रों की तुलना।
public static boolean containsIgnoreCase(String str, String searchStr) {
if(str == null || searchStr == null) return false;
final int length = searchStr.length();
if (length == 0)
return true;
for (int i = str.length() - length; i >= 0; i--) {
if (str.regionMatches(true, i, searchStr, 0, length))
return true;
}
return false;
}
उपयोग toUpperCase() ?? – Ravi