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

วิธีใช้ Regular Expressions (Regex) กรองอีเมลที่ถูกต้องใน Pandas Series


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 สำหรับจุดสิ้นสุดของสตริง