我想仅通过查询100000 (或仅查询100,000)来搜索100,000和100000。
是否可以像这样搜索。SOLR在搜索时忽略逗号和其他标点符号
目的来执行,这是,用户可以在所有,但无论如何都应该被搜索的字符串(100,000或100000)添加在任何地方逗号或没有逗号......
我想仅通过查询100000 (或仅查询100,000)来搜索100,000和100000。
是否可以像这样搜索。SOLR在搜索时忽略逗号和其他标点符号
目的来执行,这是,用户可以在所有,但无论如何都应该被搜索的字符串(100,000或100000)添加在任何地方逗号或没有逗号......
不知道,如果这是正确的,但也许你可以写一些过滤器工厂,其中数字总是以逗号和逗号格式化的数字索引。或者,您可以同时使用索引&查询分析器存储单词w/o逗号。
只是删除了,从查询,如果它是在一个数量
(如果你使用的是Java在客户端 - >解析数和做的toString)
尝试使用solr.WordDelimiterFilterFactory用catenateNumbers =“1”在你的字段的索引和查询定义中。
您这里有一些文档: WordDelimiterFactory
同意,似乎没有其他的可能性。 – Umer 2011-01-24 05:14:30