முக்கிய உள்ளடக்கத்திற்குச் செல்லவும்
தொகுதி 8 · பாடம் 1 இன் 4பாடத்திட்டத்தில் 29/32~12 min
தொகுதி பாடங்கள் (1/4)

மின்னஞ்சலைச் சரிபார்க்கிறது

மின்னஞ்சலை "சரியாக" சரிபார்ப்பது, தோன்றுவதை விட மிகவும் கடினமான பிரச்சனை: RFC 5322 ஒரு அசுரன். நடைமுறையில் நாம் ஒரு நல்ல போதும் மாதிரியை தேர்வு செய்கிறோம் பொதுவான வழக்குகளை ஏற்றுக்கொள்கிறது மற்றும் வெளிப்படையாக தவறானவற்றை நிராகரிக்கிறது.

Code
Pattern: ^[\w.+-]+@[\w-]+(?:\.[\w-]+)+$
  • [\w.+-]+ -- உள்ளூர் பகுதி: எழுத்துக்கள், இலக்கங்கள், _, ., +, -.
  • @ -- பிரிப்பான்.
  • [\w-]+(?:\.[\w-]+)+ -- டொமைன் + . ஆல் பிரிக்கப்பட்ட ஒரு TLD.

இது ஏற்றுக்கொள்ளும்: mario.rossi@example.com, foo+bar@sub.example.co.uk, user_123@test-domain.io.

இது நிராகரிக்கிறது: mario@, @example.com, mario@example (TLD இல்லை), இடைவெளிகள்.

வர்த்தக பரிமாற்றங்கள்

மேலே உள்ள அமைப்பு இல்லை ஏற்கவில்லை:

  • மேற்கோள் வரிகள் "strange (things)"@example.com (RFC அவற்றை அனுமதிக்கிறது).
  • யூனிகோட் எழுத்துகள் கொண்ட டொமைன்கள் (\u00fcber@m\u00fcnchen.de).
  • \w ஐ கடந்து செல்லாத மிக நீண்ட TLDகள் (எ.கா. சர்வதேசமயமாக்கப்பட்டவை).

உங்களுக்கு அவை தேவைப்பட்டால், வகுப்பை \p{L} க்கு u கொடியுடன் விரிவுபடுத்தவும் அல்லது ஒரு நிறுவனத்திற்கு பிரதிநிதித்துவப்படுத்தவும் சிறப்பு நூலகம்.

மின்னஞ்சல் சரிபார்ப்புக்கான வர்த்தகம் மற்றும் சிறந்த நடைமுறைகள்

மின்னஞ்சல் முகவரி உண்மையில் உள்ளது என்பதற்கு எந்த ரீஜெக்ஸும் உத்தரவாதம் அளிக்க முடியாது. அதிகப்படியான சிக்கலான வடிவங்கள் செயல்திறனைக் குறைக்கின்றன மற்றும் வழக்கத்திற்கு மாறான ஆனால் சரியான டொமைன்களை விலக்குகின்றன. வெளிப்படையான எழுத்துப் பிழைகளை நிராகரிக்கவும் சரிபார்ப்புக் குறியீட்டை அனுப்பவும் எளிய சரிபார்ப்பு முறையைப் பயன்படுத்துவது நல்லது.

முயற்சி செய்து பாருங்கள்

உடற்பயிற்சி#regex.m8.l1.e1
முயற்சிகள்: 0ஏற்றுகிறது…

உரையில் உள்ள ஒவ்வொரு மின்னஞ்சலையும் அங்கீகரிக்கவும். எளிமையான வடிவத்தைப் பயன்படுத்தவும்: @ க்கு முன் எழுத்துக்கள்/இலக்கங்கள்/புள்ளிகள், குறைந்தபட்சம் ஒரு புள்ளியுடன் டொமைன்.

எடிட்டரை ஏற்றுகிறது…
குறிப்பைக் காட்டு

பல TLDகளை ஏற்க உள்ளூர் பகுதியை [\\w.+-]+ ஆகவும் டொமைனை [\\w-]+\\.[\\w.-]+ ஆகவும் விரிவுபடுத்தவும்.

3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்

மதிப்பாய்வு பயிற்சி

உடற்பயிற்சி#regex.m8.l1.e2
முயற்சிகள்: 0ஏற்றுகிறது…

ஒவ்வொரு மின்னஞ்சலின் டொமைனையும் (@க்குப் பின் உள்ள பகுதியை) பெயரிடப்பட்ட குழுவாக `டொமினியோ` எனப் படமெடுக்கவும்.

எடிட்டரை ஏற்றுகிறது…
குறிப்பைக் காட்டு

பெயரிடப்பட்ட குழுவில் டொமைன் பகுதியை மடிக்கவும்: (?<dominio>[\\w.-]+).

3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்

கூடுதல் சவால்

உடற்பயிற்சி#regex.m8.l1.e3
முயற்சிகள்: 0ஏற்றுகிறது…

Find the domain part of an email (everything after `@`), excluding the `@` sign using lookbehind.

எடிட்டரை ஏற்றுகிறது…
குறிப்பைக் காட்டு

டொமைன் எழுத்து வகுப்பின் முன் நேர்மறை தோற்றத்தை (?<=@) பயன்படுத்தவும்.

3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்