gpt4 book ai didi

java - 列表上不区分大小写的搜索(搜索词可以是单词或句子的一部分)

转载 作者:行者123 更新时间:2023-12-01 13:14:10 25 4
gpt4 key购买 nike

我无法找到一种方法来在列表上执行不区分大小写的搜索,并且同时不使其特定于单词。例如,搜索“anim”将从列表中返回具有该序列中的这些字符的结果,因此如果存在单词“animal”,则将返回该列表条目。对于“als ea”之类的内容也是如此,因此如果列表中存在“动物吃草”或类似内容,请返回该条目。

目前我的列表看起来像

List<Animal> animals = database.getAllAnimals();

基本上从动物那里获取所有数据,然后我想用搜索词过滤整个数据(我知道这可能不是最有效的方法,可以在 SQL 中完成,但这就是我需要的方式),现在让我们假设 searchTerm = "abc" ,然后使 animals 列表仅包含返回肯定搜索结果的条目。

最佳答案

好的,我现在了解你的问题了。运行这段代码,看看它做了什么。

public class TestCompare {
public static void main (String[]args) {

String firstString = "hello";


boolean containsMySearch;

firstString = firstString.toUpperCase();
containsMySearch = firstString.contains("llo");

System.out.println("returns " + containsMySearch);

}
}

这将打印 returns false。但是,如果删除显示 firstString = firstString.toUppercase() 的行,则会打印 returns true。我不知道为什么你的不返回任何内容。但是你需要检查是否使用正确的大小写进行比较。也就是说,如果你的数据库中有 Animal,则由于区分大小写,使用 anim 进行搜索将不会返回任何内容。

关于java - 列表上不区分大小写的搜索(搜索词可以是单词或句子的一部分),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22593721/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com