2008-11-16 11 views
5

मैंने Lucene.NET (संस्करण 2.0) का उपयोग कर एक वेबसाइट के लिए पूर्ण पाठ खोज लागू की है। अनुक्रमण और खोज अच्छी तरह से काम करती है, लेकिन मुझे एक समस्या है। यदि मैं खोज शब्द के रूप में (फ़ोन नंबर, उत्पाद संख्या आदि) के लिए देखता हूं, तो मुझे कोई परिणामस्वरूप दस्तावेज़ नहीं मिलते हैं।Lucene.NET के साथ संख्याओं को कैसे अनुक्रमणित और ढूंढें?

मैं लुसीन.Net.Analysis.SimpleAnalyzer कक्षा का उपयोग कर रहा हूँ। मुझे लगता है मुझे विश्लेषक और/या टोकेनाइज़र बदलना है।

कोई सलाह?

धन्यवाद!

उत्तर

13

जब आप ल्यूसीन दस्तावेज़ बनाते हैं, तो आप प्रत्येक फ़ील्ड के लिए अलग-अलग अनुक्रमण विकल्प चुनते हैं। उन फ़ील्ड के लिए जिन्हें आप टोकननाइज़ नहीं करना चाहते हैं, आपको Field.Index.UN_TOKENIZED विकल्प का चयन करने की आवश्यकता है। यह आपके फोन नंबर और उत्पाद संख्याओं को व्यवहार में रखेगा।

मैं मानक विश्लेषक का उपयोग करने की सलाह भी दूंगा, क्योंकि यह SimpleAnalyzer की तरह संख्याओं को अलग नहीं करता है।

यह भी महत्वपूर्ण है कि आप लगातार परिणाम प्राप्त करने के लिए अनुक्रमण और खोज दोनों के लिए एक ही विश्लेषक का उपयोग करें।

संबंधित मुद्दे