【发布时间】:2024-01-11 10:00:01
【问题描述】:
我有一个df,它有一个名为EMAIL 的列,其中包含各种电子邮件地址。我想删除所有特殊字符,特别是 @ 之前的 .、- 和 _ 并附加一个新列 NEW_EMAIL。比如df['EMAIL'] = 'ab_cd_123@email.com',我要df['NEW_EMAIL'] = 'abcd123@email.com'。
我能够使用下面的代码成功删除句点,但似乎无法删除同一行代码中的下划线或破折号。现在,我正在重复同一行代码来删除这三个特殊字符,这非常难看。有人可以帮帮我吗?提前感谢您的帮助。
df['NEW_EMAIL'] = df.EMAIL.str.replace(r'\.(?!.{1,4}$)','', regex = True)
df['NEW_EMAIL'] = df.NEW_EMAIL.str.replace(r'\.(?!.{1,4}$)','', regex = True)
df['NEW_EMAIL'] = df.NEW_EMAIL.str.replace(r'\.(?!.{1,4}$)','', regex = True)
【问题讨论】:
标签: python regex pandas special-characters str-replace