ई-मेल में दोहराव वाली सामग्री कैसे निकालें?


2

मैं प्राप्त ई-मेल में स्वचालित रूप से दोहराए गए संदेश सामग्री को निकालना चाहूंगा।

उदाहरण के लिए जब भी मैं अपनी कंपनी में एक व्यक्ति के साथ ई-मेल का आदान-प्रदान करता हूं, तो मैं बेकार, दोहराए जाने वाले सामग्री जैसे हस्ताक्षर और शीर्षकों से बातचीत को फ़िल्टर करने में सक्षम होना चाहूंगा (From :, Date :, CC :, विषय: ...) ।

मुझे मैक्रोज़ / वीबीए के साथ कोई अनुभव नहीं है और मुझे आउटलुक / वीबी पुस्तकों में कोई सुझाव नहीं मिल सकता है जिनकी मुझे पहुंच थी। मुझे पायथन के साथ कुछ अनुभव है, लेकिन यह बहुत बुनियादी है (मैंने लर्निंग पायथन द हार्ड वे कोर्स किया)।

जवाबों:


0

यह उत्तर (आपके द्वारा सही मायने में) एक ग्राफिकल प्रदान करता है, एक नियम और प्रोग्राम को स्थूल बनाने के लिए कैसे एक आवक ईमेल को संशोधित करता है, जैसा कि वे शरीर पर कुछ प्रसंस्करण करने के लिए प्राप्त करते हैं

आपको केवल "दोहराए जाने वाले सामग्री" को हटाने के लिए प्रसंस्करण को करने के लिए कोड को अनुकूलित करना होगा जिसे आप देखना नहीं चाहते हैं।

दोहराव वाली सामग्री को हटाने की सामान्य समस्या वास्तव में जटिल, कम्प्यूटेशनल रूप से है।

"दोहरावदार स्ट्रिंग" मानकर एक विकल्प है जो पहले से ही पाठ के भीतर हुआ है, आपके पास इस तरह एक लूप संरचना होगी ( स्यूडोकोड , इसे प्रोग्राम में कॉपी करने की कोशिश न करें):

For i = 1 To Len(str)
    For j = i To Len(str)
        needle = substring(str, i, j)
        nlen = Len(needle)
        For k = 1 To Len(str)
            match = substring(str, k, k + nlen)
            If needle = match Then
                '...do stuff
            End If
        Next
    Next
Next

बहुत जटिल लगता है। इसके अलावा, इस तरह के लूप "पेटिट" (एक अंतिम नाम) जैसी चीजों को पकड़ते हैं और इसे "पेटी" में बदल देते हैं (बाकी अक्षर लंबाई 1 के सब्सट्रेट हैं जो पहले से ही घटित हुए हैं)। आपको "सुई" के लिए एक न्यूनतम लंबाई निर्धारित करनी होगी ताकि वर्णमाला के प्रत्येक अक्षर के अधिकांश एक उदाहरण से बचने के लिए। फिर आपको यह निर्धारित करने के लिए स्ट्रिंग पर कुछ विश्लेषण करना होगा कि क्या यह "हेडर टेक्स्ट" है या कुछ और जिसे आप हटाना चाहते हैं। अन्यथा, यह कुछ ऐसा पकड़ेगा जैसे "आपको ऐसा नहीं करना चाहिए। मैं वास्तव में, दृढ़ता से सलाह देता हूं कि आप ऐसा न करें।" और इसे "आपको ऐसा नहीं करना चाहिए। मैं वास्तव में, दृढ़ता से सलाह देता हूं कि आप"

यदि आप डुप्लिकेट सामग्री खोजने के सामान्य उद्देश्य (भोले) तरीके से नहीं जाना चाहते हैं , जो बहुत सारी सार्थक सामग्री को हटा सकता है, तो आपको यह तय करना होगा:

  • डुप्लिकेट का पता लगाने का प्रयास करने के लिए कौन सा सब्सट्रेट;
  • कौन से उदाहरण डुप्लिकेट रखने के लिए और कौन से हटाने के लिए।

InStrऔर MidVBA में कार्यों उपयोगी होना चाहिए। F2विभिन्न मॉड्यूल में उपलब्ध कार्यों की सूची देखने के लिए VBA संपादक में अपने कीबोर्ड पर दबाएँ । VBA मॉड्यूल में अंतर्निहित स्ट्रिंग फ़ंक्शन उपयोगी साबित होने चाहिए।

मुझे नहीं लगता कि इस तरह का कुछ भी पहले से मौजूद डिब्बाबंद प्रारूप में मौजूद है जिसे आप बस ले सकते हैं और उपयोग कर सकते हैं, लेकिन अगर आप सभी को हटाना चाहते हैं तो यह है जैसे कि मेल हेडर :, से :, विषय :, यह काफी आसान होना चाहिए कुछ सबरिंग या रेगेक्स मैचों का उपयोग करके उनका पता लगाने के लिए। यदि आप वास्तव में कोड के आंतों में फंस जाते हैं, तो मुझे लगता है कि एक स्टैकअप के रूप में स्टैकऑवरफ्लो प्रश्न अधिक उपयुक्त होगा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.