如何使用正则表达式 (Regex) 过滤 Pandas 系列中的有效电子邮件?

pythonpandasserver side programmingprogramming

正则表达式是定义搜索模式的字符序列。在此程序中,我们将使用这些正则表达式过滤有效和无效的电子邮件。

我们将定义一个包含不同电子邮件的 Pandas 系列,并检查哪些电子邮件有效。我们还将使用一个名为 re 的 Python 库,该库用于正则表达式。

算法

步骤 1:定义一个包含不同电子邮件 ID 的 Pandas 系列。
步骤 2:定义一个用于检查电子邮件有效性的正则表达式。
步骤 3:使用 re 库中的 re.search() 函数检查电子邮件的有效性。

示例代码

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

解释

正则表达式变量具有以下符号:

  • ^:字符串开头的锚点
  • [ ]:打开和关闭方括号定义字符类以匹配单个字符
  • :转义字符
  • :点匹配除换行符之外的任何字符
  • {:打开和关闭花括号用于范围定义
  • :美元符号是字符串结尾的锚点

相关文章