2010-07-30 18 views
3

在爲我的Lucene查詢構建一些單元測試時,我注意到了一些與標點符號有關的奇怪行爲,特別是在括號內。Lucene與標點符號相關

什麼是處理包含大量標點符號的搜索字段的最佳方法?

回答

3

如果你還沒有定製查詢解析器,Lucene應該按照default query parser syntax的行爲。你有什麼不同嗎?你想要標點符號具有特殊含義還是隻是爲了從搜索中刪除標點符號? 另一個通常的嫌疑人是Analyzer,它決定了你的字段是如何編入索引的,以及如何將查詢分解成多個部分進行搜索。你能發表不良行爲的具體例子嗎?

+0

感謝您的回覆。我通過在文檔上設置一個純粹用於搜索目的的「乾淨」字段來推進此工作。這迫使我也'清理'所有搜索查詢字符串。似乎工作得很好,並且作爲查詢結果返回完整字段。 – berko 2010-08-05 06:53:47

+0

鏈接被破壞 – DCShannon 2015-02-12 02:09:07

+0

@DCShannon - 我已更新鏈接。當鏈接再次中斷時,嘗試搜索更多當前版本的Lucene - 應該在那裏找到它們。 – 2015-02-12 09:49:26

1

它不只是括號,其他標點符號如冒號,連字符等都會引起問題。 Here是一種處理它們的方法。