对于像"快速棕色狐狸"这样的短语,我想删除开头的单词"the",这样它就会显示为"快速棕色福克斯"。
我在schema.xml中尝试过以下设置,但都没有成功。最终发生的是,它删除了"the"一词,即使在短语的开头找不到它。
即"快速且死亡"变为"快速且致命">
"solr.PatternPlaceFilterFactory"pattern="(the)"replacement="replace="all"/>
"solr.PatternPlaceFilterFactory"pattern="(the)"replacement="replace="all"/>
"solr.PatternPlaceFilterFactory"pattern="(the)"replacement="replace="all"/>
我使用KeywordTokenizerFactory是因为我正在进行完全匹配。
目标是如果我发送以下短语到Solr进行索引,
"快速棕色狐狸",它将删除短语开头的单词"THE",并在solr中转换为"快速棕色福克斯"。
任何想法都将不胜感激。谢谢
pattern
值是一个正则表达式,由于您只想删除前导"The",因此应使用^
:将其锚定在开头
pattern="^thes+"
除了BlueM的答案
check that you have not used solr.StopFilterFactory and if you have used it
than remove "the" from stopwords.txt