我有一个简单的问题。如何在java中使indexof case不敏感。这个问题已在某些论坛得到解答,但我不明白答案。
比如说。我有一个字符串s = Phone(Conf) 我想拉这样的(Conf)记录,但是用户正在输入CONF或conf或Conf等。 因此,如果在任何情况下找到单词conf,我的程序应该能够提取记录。
if(s.indexOf("(")>-1&& s.indexOf("Conf")>-4 && s.lastIndexOf(")")>-1)
{
String s1=s.substring(s.indexOf("(Conf"),s.lastIndexOf(")")+1);
}
有人可以解释一下吗?如果字符串仅为(Conf),则上面的代码将其拉出。
答案 0 :(得分:8)
最安全的方法是:
content.toLowerCase().indexOf(searchTerm.toLowerCase())
,这样你就可以覆盖2个可能的边缘情况,当内容可能是小写的时候,搜索词是大写的,或者两者都是大写的。
答案 1 :(得分:3)
一个常见的解决方案:
yourString.toLowerCase().indexOf("foo");