默认情况下,单词“ Word”和“ word”不相同。如何使Lucene不区分大小写?
最简单的方法是降低所有可搜索的内容以及查询的大小写。请参阅
LowerCaseFilter
文档。您也可以将Wildcard
查询用于不区分大小写的搜索,因为它绕过了Analyzer
。
如果需要,您可以将内容存储在不同的字段中以捕获不同的案例配置。
我想让用户选择进行区分大小写或不区分大小写的搜索。 我的想法是使用区分大小写的分析器对数据进行索引,然后根据用户输入使用区分大小写或不区分大小写的分析器进行搜索。 因此,我创建了区分大小写的分析器,下面是我的简单代码: 对于索引,我使用了以下方法: 对于搜索,我使用: 当我对此感到厌倦时,敏感的案例起了作用,但不敏感的案例没有起作用。 经过更多的研究,我发现使用区分大小写的分析器和低关注度的查询是
问题内容: 我有一个Lucene索引,该索引当前区分大小写。我想添加的 选项 有不区分大小写作为后备的。这意味着与案例匹配的结果将获得更大的权重,并且将首先出现。例如,如果结果数限制为10,并且有10个匹配项符合我的情况,那就足够了。如果仅找到7个结果,则可以从不区分大小写的搜索中再添加3个结果。 我的案子实际上更复杂,因为我有不同重量的物品。理想情况下,匹配“错误”的表壳会增加一些重量。不用说,
问题内容: 如何更改strpos以使其不区分大小写。原因是如果的名称是 MadBike ,而搜索字词是 bike ,则该链接不会向我显示。我主要关心的是代码的速度。 问题答案: 您正在寻找 如果您无法使用该功能,则只需先调用两个字符串即可。 编辑 : 如果要查找带有变音符号的子字符串,将无法正常工作。 例如: 返回,但应该返回。
考虑: 我试图在每边只显示100个字符,中间是搜索字符串。 这段代码实际上可以工作,但它是区分大小写的。如何使其不区分大小写?
问题内容: 考虑: 我正在尝试仅在每边显示100个字符,并在中间显示搜索字符串。 该代码实际上有效,但是区分大小写。如何使其不区分大小写? 问题答案: 只需 在定界符后添加修饰符即可: 如果 设置了修饰符,则模式中的字母将同时匹配大写和小写字母。
我试图使字典的大小写不敏感。但是,我宣布它是一种财产,我怎么能让它变得不敏感呢。 我知道在定义时,我可以像这样使用它: 但是,我在接口和类中分别定义了它,比如 我怎么能让这个案子变得麻木不仁呢?