E-posta Gelen Kutusu'nda olduğu gibi, kullanıcıya gönderilen veriler için ücretsiz bir metin arama kutusu geliştirmek için Lucene kullanıyoruz. Kutunun tarihleri işlemesine izin vermek istiyoruz, örneğin 5/1/2011. İşleri kolaylaştırmak için, sadece iki tarih biçimleri özelliğin güncel sürümünü sınırlandırıyor: Bizim prototip içinLucene ücretsiz metin arama sorgusunda bir tarih nasıl algılanır?
mm/dd/yy
mm/dd/yyyy
bu iki aramaya sorgu dizesi-sürecini önceden denemek için sorgu analiz sürecini kesmek tarih kalıpları. Bu yaklaşık 2 yıl önceydi ve biz Lucene 2.4'teydik. Bir DateFormat'ı kabul etmek ve belirtilen herhangi bir tarihle bir TokenStream döndürmek için Lucene'de herhangi bir araç olup olmadığını merak ediyorum. Lucene 2.9 için javadocs aracılığıyla bakınca, sınıf bulundu:
org.apache.lucene.analysis.sinks.DateRecognizerSinkFilter
ihtiyacım olanı yapmak gibi görünüyor, ama bir SinkFilter, Lucene Wiki belgelendirilmesi görünmüyor bir konsept uygular. Bu filtreyi daha önce kullanmış olan var mı? Varsa, kullanmanın en etkili yolu nedir?
Cevabınız için teşekkürler! Çözümünüzü bir deneyin ve sonuçlarımı göndereceğim. –
Harika! Bunu, orijinal dizeyi ve tarihi aynı konumda yayınlayan normal bir satır içi belirteci olarak da uygulayabilirsiniz. Bu şekilde, örneğin, tarih biçiminiz ay veya tarih adlarına sahipse, doğrudan bunları da arayabilirsiniz. –