के साथ प्रतिस्थापित नहीं कर रहा है इसलिए मैं सोलर में बहुत नया हूं लेकिन मैं एक फोन नंबर स्ट्रिंग पर कुछ प्री-प्रोसेसिंग करने के लिए पैटर्नरप्लेस चेहरफिल्टर फैक्टरी का उपयोग करने की कोशिश कर रहा हूं। यहाँ क्षेत्र के लिए विन्यास है:सोलर पैटर्न रीप्लेस कैरफिल्टर फैक्टरी निर्दिष्ट पैटर्न
<fieldType name="phone_number" class="solr.TextField" >
<analyzer>
<charFilter class="solr.PatternReplaceCharFilterFactory"
pattern="\(?(\d{3})?\)?[-. ]?(\d{3})[-. ]?(\d{4})"
replaceWith="$1-$2-$3"/>
<tokenizer class="solr.StandardTokenizerFactory"/>
</analyzer>
</fieldType>
मैं regex परीक्षण किया है और यह सबसे मेल खाता मैं इसे (जैसे 555.444.1234, (555) 444-1234, +५५५४४४१२३४, 4,441,234, 444-1234 की उम्मीद करेंगे। , आदि)।
अब मेरी समझ यह है कि रेगेक्स को जो भी पारित किया जाना चाहिए उससे मेल खाना चाहिए और निर्दिष्ट पैटर्न के साथ इसे प्रतिस्थापित करना चाहिए। तो अगर उन्होंने मुझे 555.123.4444 पास कर दिया तो मुझे उम्मीद है कि इसका परिणाम 555-123-4444 को मानक टोकननाइज़र फैक्ट्री में पारित किया जाएगा। वहां से यह टोकन 555,123,4444 में टूट जाएगा।
यह देखते हुए कि मैंने इस पर कितना समय व्यतीत किया है, मुझे यकीन है कि एक छोटा कॉन्फ़िगरेशन समस्या है जो मुझे याद आ रही है लेकिन उपलब्ध दस्तावेज (जो मैंने देखा है) से मुझे कोई संकेत नहीं है कि यह क्या है।
अग्रिम धन्यवाद।
शायद आप अन्य उपयोगकर्ताओं के लिए इसे और अधिक उपयोगी बनाने के लिए अपने प्रश्न (इसे संपादित करना) में कुछ विवरण जोड़ सकते हैं। आप अपने उत्तर को स्वतः भी स्वीकार कर सकते हैं। – javanna
@javanna, यह वास्तव में मुझे 2 दिनों के लिए अपना जवाब स्वीकार नहीं करेगा या मैं चाहता हूं। मुझे यकीन नहीं था कि मैं संपादित करना या जवाब देना चाहता हूं। मैं जवाब पर बस गया, प्रतीक्षा अवधि एक बार प्रतीक्षा अवधि – Jared
से अधिक है, धन्यवाद! – javanna