मुझे इसे खोजने के लिए आज कुछ खुदाई करनी थी, लेकिन क्या आप जानते हैं कि ईमेल पते की वैध लंबाई क्या है? यह वास्तव में भागों में टूट गया है ... Name@Domain.com। इस के अनुसार है RFC2822.
- नाम 1 से 64 अक्षरों का हो सकता है।
- डोमेन 1 से 255 वर्ण का हो सकता है।
वाह ... इसका मतलब है कि यह एक मान्य ईमेल पता हो सकता है:
लोरिमाएपसुमदलोरासितामेतबाकेंसेक्टेराएराडिपिसिन
gaelitanullamc @ loremaipsumadolorasitaametbaconsect
एतुरादिपिस्किंगेलित्कासैदामेतमसुतानिसियावेहिकु
ललालसुस्काकैप्लेसेक्विटिंकडेंटाबाडीमाडाकॉन्डिमन
तुमरुट्रंबटुरपिसामासाएकसेक्टेट्यूराआरक्यूबाएउटिन
सीडंटालिबेरौआगुएवेस्टीबुलुमेरेटाहाफेलुसैटिन
ciduntaturpisaduis.com
एक व्यापार कार्ड पर फिटिंग की कोशिश करो! विडंबना यह है कि अधिकांश ईमेल एड्रेस फ़ील्ड वेब पर 100 वर्णों तक सीमित हैं। यह वास्तव में मान्य नहीं है। यदि आप PHP के उचित निर्माण के लिए एक ईमेल पते को मान्य करना चाहते हैं, तो मुझे यह स्निपेट नेट पर मिला:
http://derrick.pallas.us/email-validator/ # लाइसेंस: शैक्षणिक नि: शुल्क लाइसेंस 2.1 # संस्करण: 2006-12-01a ((ereg ('' '' ^ '') - [-! # $% & \! '* + / 0-9 =? AZ ^ _a-z {|} ~]'। (\\।; [-! # $% & \ '* + / 0-9 =? AZ ^ _a-z { |} ~]) * ''। '@'। '[a-zA-Z] ((-? [a-zA-Z0-9]) * *'। '(\\ [a-zA-Z] (-) ; [a-zA-Z0-9]) *) + '।' $ ', $ ईमेल)) झूठा लौटें; सूची ($ स्थानीय, $ डोमेन) = विभाजन ("@", $ ईमेल, 2); if (strlen ($ स्थानीय)> 64 || strlen ($ domain)> 255) गलत है; अगर ($ चेक &&! gethostbynamel ($ डोमेन)) गलत लौटते हैं; सच लौटना; # समाप्त ###### }
मुझे खुशी है कि किसी ने इसे उपयोगी पाया! "ईमेल regexp" के लिए Google पर खोज करने से कई नियमित अभिव्यक्ति का पता चलता है जो RFC के साथ सिंक नहीं करते हैं।
हां, मैंने RFC के साथ अन्य समाधानों के अनुपालन में कमी देखी। मैंने देखा है, हालांकि, यह भी कि यह रेगीक्स एटिपिकल है और मानक नहीं है। मुझे याद है कि वास्तविक रेगेक्स (<,>, आदि की अनुमति) पढ़ना अधिकांश प्रक्रियाओं के लिए बहुत ही गहन है।
हालाँकि, यह पूरी तरह से लिखा गया है और निश्चित रूप से एक समाधान है जो किसी भी उद्यम ईमेल आवेदन के लिए स्वीकार्य होना चाहिए।
एक बार फिर धन्यवाद!
डॉग
दुर्भाग्य से, मैंने उस पृष्ठ को गलत RFC (2821 के बजाय 2822) से जोड़ा था, लेकिन इसे ठीक कर लिया गया है। कोण कोष्ठक ईमेल पते के स्थानीय या डोमेन भागों का हिस्सा नहीं हो सकता है; इसके बजाय, वे टोकन प्वाइंट्स का प्रतिनिधित्व करते हैं, यानी उन्हें ईमेल पते (उदाहरण के लिए आपके मेल रीडर में) को घेरने के लिए इस्तेमाल किया जा सकता है, क्योंकि वे पते का हिस्सा नहीं हो सकते हैं।
एक बात जो मेरा कार्य नहीं करती है, वह ईमेल पतों के उद्धृत रूप के बारे में चिंतित है - जहां स्थानीय भाग दोहरे उद्धरण चिह्नों में प्रकट होता है - क्योंकि RFC2821 अनिवार्य रूप से कहता है कि किसी को भी कभी भी अपना पता इस तरह से लिखना नहीं चाहिए। (मेरा मानना है कि फॉर्म पीछे की अनुकूलता के लिए है और अब बुरा व्यवहार है।)
वास्तव में RFC2821 ईमेल पते की लंबाई के लिए सही संदर्भ है। मैंने इसे वहां पाया, लेकिन RFC 2822 में नहीं।
2821 अक्षरों के मेल और RCPT कमांड में एक पते की लंबाई पर RFC 256 में प्रतिबंध है। पता लंबाई पर ऊपरी सीमा को सामान्य रूप से 256 माना जाना चाहिए।
- स्रोत: RFC 3696 इरेटा
इसके अलावा, क्योंकि RFC 2181 का कहना है कि "एक पूर्ण डोमेन नाम 255 ऑक्टेट तक सीमित है", यह बार-बार लोगों द्वारा गलत तरीके से व्याख्या की जाती है (अन्य RFC के लेखकों सहित) जिसका अर्थ है कि डोमेन नाम 255 वर्ण लंबा हो सकता है। लेकिन RFC2181 तार पर DNS प्रोटोकॉल-स्तर प्रतिनिधित्व के बारे में बात कर रहा है, न कि मुद्रण योग्य वर्ण।
एक डोमेन नाम की अधिकतम लंबाई 253 वर्ण (254 अनुगामी डॉट सहित, 255 ओकटेट पर तार समाप्त करने वाले नल के साथ) है। और यही BIND और DiG लागू होता है।
ईमेल पतों के संभावित आकारों को कम आंकने वाले डेवलपर्स ने कुछ समस्याएं पैदा की हैं: http://www.eph.co.uk/resources/email-address-le...
मुझे लगता है कि यदि आपका ईमेल पता "jack1983@aol.com" जैसा कुछ छोटा है, तो आप सोच सकते हैं कि 30 अक्षर भी उदार हैं।
क्षमा करें, उपरोक्त URL टूट गया है ...
ईमेल पतों के संभावित आकारों को कम आंकने वाले डेवलपर्स ने कुछ समस्याएं पैदा की हैं:
http://www.eph.co.uk/resources/email-address-leng...
मुझे लगता है कि यदि आपका ईमेल पता "jack1983@aol.com" जैसा कुछ छोटा है, तो आप सोच सकते हैं कि 30 अक्षर भी उदार हैं।
बस यह पोस्ट मिली ... उल्लसित। मैं अब सोच रहा था कि क्या मैं उस डोमेन को पंजीकृत कर सकता हूं।