Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

โปรแกรม Python ตรวจสอบที่อยู่อีเมล


สมมติว่าเรามีที่อยู่อีเมลเป็นสตริง เราต้องตรวจสอบว่าสิ่งนี้ถูกต้องหรือไม่ตามเงื่อนไขต่อไปนี้ -

  • รูปแบบต้องเป็น username@company.domain รูปแบบ

  • ชื่อผู้ใช้มีได้เฉพาะอักษรตัวพิมพ์ใหญ่และตัวพิมพ์เล็ก ตัวเลข ขีดกลาง และขีดล่างเท่านั้น

  • ชื่อบริษัทมีได้เฉพาะตัวอักษรพิมพ์เล็กและตัวเลขเท่านั้น

  • โดเมนมีได้เฉพาะตัวพิมพ์ใหญ่และตัวพิมพ์เล็กเท่านั้น

  • ความยาวสูงสุดของส่วนขยายคือ 3

เราสามารถใช้นิพจน์ทั่วไปเพื่อตรวจสอบที่อยู่อีเมลได้ สามารถใช้นิพจน์ทั่วไปได้โดยการนำเข้าไลบรารีใหม่ เพื่อให้ตรงกับรูปแบบ เราจะใช้ฟังก์ชัน match() ภายใต้ไลบรารี่ใหม่

ดังนั้น หากอินพุตเป็น s ="popular_website15@comPany.com" ผลลัพธ์จะเป็น True

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -

  • pat :="เริ่มต้นด้วย [a-zA-Z0-9-_] ตามด้วย @ แล้วตามด้วยชื่อบริษัทด้วย [a-zA-Z0-9] จากนั้นคั่นด้วยจุดและโดเมนด้วย [a-z] ที่มีความยาว 1 ถึง 3 และสิ่งนี้มีอยู่ในตอนท้าย"
  • ถ้า pat ตรงกับ s แล้ว
    • คืนค่า True
  • มิฉะนั้นจะคืนค่าเป็นเท็จ

ตัวอย่าง

ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น

import re

def solve(s):
   pat = "^[a-zA-Z0-9-_]+@[a-zA-Z0-9]+\.[a-z]{1,3}$"
   if re.match(pat,s):
      return True
   return False

s = "popular_website15@comPany.com"
print(solve(s))

อินพุต

"popular_website15@comPany.com"

ผลลัพธ์

True