2010-08-11 121 views
0

下划线'_'像AND一样工作,不是吗?Lucene.net搜索和下划线

当搜索任何的

test_12 , 12_test , 12 AND test , test AND 12 

我得到同样的打击。

但为什么通配符有问题?

mytest* AND abc_IN_CRM_C --> finds results! 
abc_IN_CRM_C_mytest* --> no results! 
abc_IN_CRM_C AND mytest* --> results ?! 

我在做什么错?

回答

0

如果您使用的是StandardAnalyzer,那么文本会被分割为下划线。这就是为什么你使用“AND”得到相同的结果。

另见Lucene search and underscores

+0

是什么意思分裂?真的是两个字?应该是最后一个querys是平等的,不是吗?但为什么结果不同? – tim 2010-08-11 13:43:01

+0

我没有安装lucene,但它可能会用通配符以不同的方式标记它。 – 2010-08-11 14:07:11