从Python中的地址中删除电子邮件域

时间:2019-03-22 23:40:52

标签: python email

寻找一种在初始用户提示后删除电子邮件地址的“ @domain”的好方法。

prompt = input("Enter the email address of the user: ")

所有域都是相同的,因此我不必担心子域或其他任何怪异现象。

输入:john.doe@generic.com 输出:john.doe

我希望输出进入另一个变量,以供Linux服务器上的一系列bash命令使用。

2 个答案:

答案 0 :(得分:1)

您可以简单地使用:

prompt.split("@")[0]

答案 1 :(得分:0)

正则表达式如何?

import re

def extract_user(address):
    result = re.search(r'([\w\d\.]+)@[\w\d\.]+', address)

    if result and address.count('@') == 1:
        return result.group(1)

    else:
        raise ValueError(f'{address} is not a validly formatted e-mail address.')

extract_user('john.doe@generic.com')

输出:

'john.doe'