如何使字符串不区分大小写

时间:2016-01-02 06:56:09

标签: android

我有一个edittext和listview有一些值。在edittext中键入文本时,listview内容将根据edittext中键入的值进行更改。

现在的问题是,字符串区分大小写。即,如果原始文字为Apparel,则如果我们输入apparelappa,则原始文字不会显示。

我想让字符串搜索不区分大小写。

我的代码是,

private List<SearchList> searchTerms(List<SearchList> search_list, String s) {
    List<SearchList> matches = new ArrayList<SearchList>();
    for (SearchList search_lists : search_list) {
        if (search_lists.search_term.contains(s)) {
            matches.add(search_lists);
        }
    }
    return matches;
}

有没有办法实现这一目标。我已经尝试了很多。

3 个答案:

答案 0 :(得分:4)

string contains(); 函数区分大小写。 从您的问题中,我注意到您的列表中包含大写字母的项目。 因此,将 toLowerCase()应用于双方都会将其删除。

if (search_lists.search_term.toLowerCase().contains(s.toLowerCase())) 
{
    matches.add(search_lists);
}

希望这有帮助。

答案 1 :(得分:2)

尝试降低()字符串:

private List<SearchList> searchTerms(List<SearchList> search_list, String s) {
    List<SearchList> matches = new ArrayList<SearchList>();
    for (SearchList search_lists : search_list) {
        if (search_lists.search_term.contains(s.toLowerCase())) {
            matches.add(search_lists);
        }
    }
    return matches;
}

答案 2 :(得分:0)

做同样的事情并进行比较,希望它会起作用:)

   EditText editText= (EditText) findViewById(R.id.editText);
   String editTextString=editText.getText().toString();
   editTextString.equalsIgnoreCase(yourCompare);