RegEx "প্রাপ্ত:" দ্বারা "ই-মেইল হেডার" এর সাথে সময় মেলে

ভাগ-হোস্টে যেখানে আমার ওয়েবসাইট আছে, আমার কাছে একটি ই-মেইল ফরওয়ার্ড রয়েছে যা আমার ফোন থেকে পাঠ্য বার্তা হিসাবে বার্তা পাঠায়। সম্প্রতি, তবে, হাত থেকে কিছুটা বেরিয়ে আসছে।

আমি আশা করছি যে, cPanel এ "ব্যবহারকারীর স্তর ফিল্টারিং" ব্যবহার করে, আমি 07:00:00 এবং ২২ ঘন্টার মধ্যে আমার ফোনে ই-মেইলগুলি ফরোয়ার্ড করতে শুধুমাত্র একটি RegEx- ভিত্তিক ফিল্টার সেট করতে পারি : 00: 00।

এই ফিল্টার নিম্নলিখিত ই-মেইল হেডারের সাথে মিলিত হবে, যা সাধারণত বার্তা উত্সের মধ্যে 2-3 টি লাইন থাকে:

Received: by 99.99.99.99 with SMTP id XyXyXyXyXyXyXy;
        Tue, 15 May 2012 01:22:33

... এবং এইভাবে আমি আশা করব যে এটি কাজ করবে:

Received: by (ANY IP) with (ANYTHING) id (ANYTHING);
        (Sun|Mon|Tue|Wed|Thu|Fri|Sat), (ANY DATE/MONTH/YEAR) (RegEx magic to match time?)

যখন ম্যাচ সফল হয় (যেমন, সময় 07:00:00 এবং 22:00:00 এর মধ্যে) তখন বার্তাটি আমার ফোনে পাঠানো হবে, অন্যথায় এটি কিছুই করবে না। (রেফক্স নিজেই এর সাথে কিছুই করার নেই) অবশ্যই।

আমি বেশ কয়েকটি রেগুলার এক্সপ্রেশন N00b করছি, কিন্তু নিম্নলিখিত (অকার্যকর) RegEx তৈরি করেছি, এবং এই বিষয়ে কোন ধারণা নেই যে আমি কিভাবে এটি থেকে কাজ করছি:

\bReceived: by (.*) with [a-Z] id (.*)(Sun|Mon|Tue|Weds|Thu|Fri|Sat),(.*)[0-2][2-7]:[0-2][0-9]:[0-2][0-9]\bsi

কোন চিন্তা, পরামর্শ বা সৃজনশীল সমাধান? আমি আমার হোস্টিং পরিষেবা দ্বারা বলা হয়েছে যে রেপএক্স CPANEL এর PERL বিন্যাসে থাকা প্রয়োজন।

1
যোগ সম্পাদিত
মতামত: 1

2 উত্তর

আপনি http://gskinner.com/RegExr/ ব্যবহার করে কাজ করার জন্য স্থির, এখনও বেশিরভাগ উপোপলীয়। আপনি আরও এই মধ্যে যেতে চান তাহলে বলুন।

\bReceived: by (.*) with \w+ id (.*);\s*(Sun|Mon|Tue|Weds|Thu|Fri|Sat),\s*(\d+\s+\w+\s+\d+)\s+[0-2][0-9]:[0-5][0-9]:[0-5][0-9]\b
1
যোগ

ইউজিনের রেজক্সের সংশোধিত সংস্করণ;

/\bReceived: by .*?;\s*(?:Sun|Mon|Tue|Weds|Thu|Fri|Sat),\s*\d+\s+\w+\s+\d+\s+(?:0[789]|1\d|2[01]):\d\d:\d\d\b/

এই সংস্করণটি অ অধিগ্রহণের গ্রুপিং ব্যবহার করে এবং গ্রহণযোগ্য সময় 07:00:00 থেকে 21:59:59 পর্যন্ত সীমিত করে। এটি সময় বিন্যাসটি বৈধ বলে অনুমান - তত্ত্বগতভাবে এটি 10:99:99 সময় পাস করবে, কিন্তু আমি অনুমান করছি যে আপনি তাদের দেখতে পাবেন না।

0
যোগ
নিম্নে cPanel- এর সাথে ব্যবহারের জন্য আমি এটি সংশোধন করতে চাই ... প্রাপ্ত:। *?? \ S * (?: সূর্য | সোম | মঙ্গল | ওয়াডেস | থু | শুক্র | শনি], \ s * \ d + s + \ w & zwnj; + \ s + \ d + \ s + (?: 0 [789] | এবং zwnj; 1 \ d | 2 [01]): \ d \ d: \ d \ d ... কিন্তু সত্যিই এই ছিল ঠিক আমি কি প্রয়োজন, এবং একটি কবজ কাজ করে! আপনার সাহায্যের জন্য আপনাকে অনেক ধন্যবাদ
যোগ লেখক user1076122, উৎস