Regular Expression เป็นลำดับของอักขระที่กำหนดรูปแบบการค้นหา ในโปรแกรมนี้ เราจะใช้ Regular Expressions เพื่อกรองอีเมลที่ถูกต้องและไม่ถูกต้อง
เราจะกำหนด Pandas Series ที่มีอีเมลต่างๆ และตรวจสอบว่าอีเมลไหนถูกต้อง เราจะใช้ไลบรารี Python ชื่อ re ซึ่งใช้สำหรับ Regex
อัลกอริทึม
ขั้นตอนที่ 1: กำหนด Pandas Series ของอีเมล ID ต่างๆ ขั้นตอนที่ 2: กำหนด Regex สำหรับตรวจสอบความถูกต้องของอีเมล ขั้นตอนที่ 3: ใช้ฟังก์ชัน re.search() ในไลบรารี re เพื่อตรวจสอบความถูกต้องของอีเมล
ตัวอย่างโค้ด
import pandas as pd
import re
series = pd.Series(['jimmyadams123@gmail.com', 'hellowolrd.com'])
regex = '^[a-z0-9]+[\._]?[a-z0-9]+[@]\w+[.]\w{2,3}$'
for email in series:
if re.search(regex, email):
print("{}: Valid Email".format(email))
else:
print("{} : Invalid Email".format(email))
ผลลัพธ์
jimmyadams123@gmail.com: Valid Email hellowolrd.com : Invalid Email
คำอธิบาย
ตัวแปร regex มีสัญลักษณ์ดังนี้:
- ^: Anchor สำหรับจุดเริ่มต้นของสตริง
- [ ]: วงเล็บเหลี่ยมเปิด-ปิด กำหนด Character class เพื่อจับคู่อักขระเดี่ยว
- \: Escape character
- .: จุดจับคู่อักขระใดๆ ยกเว้นสัญลักษณ์ newline
- {}: วงเล็บปีกกาเปิด-ปิด ใช้สำหรับกำหนดช่วง (range)
- $: Dollar sign เป็น Anchor สำหรับจุดสิ้นสุดของสตริง