如何使用正则表达式 (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
解释
正则表达式变量具有以下符号:
- ^:字符串开头的锚点
- [ ]:打开和关闭方括号定义字符类以匹配单个字符
- \ :转义字符
- . :点匹配除换行符之外的任何字符
- {:打开和关闭花括号用于范围定义
- $ :美元符号是字符串结尾的锚点