Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Python中从地址中删除电子邮件域_Python_Email - Fatal编程技术网

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

在Python中从地址中删除电子邮件域,python,email,Python,Email,正在寻找一种在初始用户提示后删除“@domain”电子邮件地址的好方法 prompt=input(“输入用户的电子邮件地址:”) 所有的域都是相同的,所以我不需要担心子域或任何其他奇怪之处 输入:约翰。doe@generic.com 输出:john.doe 我希望输出进入另一个变量,以便在Linux服务器上的一系列bash命令中使用。正则表达式如何 import re def extract_user(address): result = re.search(r'([\w\d\.]+)

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

prompt=input(“输入用户的电子邮件地址:”)

所有的域都是相同的,所以我不需要担心子域或任何其他奇怪之处

输入:约翰。doe@generic.com 输出:john.doe


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

正则表达式如何

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'
您可以简单地使用:

prompt.split("@")[0]

所有已发布的内容都是程序说明。但是,我们需要您根据页面提出一个问题。我们不能确定你想从我们这里得到什么。请在您的帖子中加入我们可以回答的有效问题。提醒:通过访问网站,确保您知道这里的主题;请我们为您编写程序、建议和外部链接都是离题的。说真的-您可以使用
split(“@”)
-您可以迭代charewise直到找到
“@”
-您可以使用
str.find(“@”)
获取索引并使用字符串切片,您可以使用
re
gex,您可以使用
str.partition
。。。但你没办法解决?嘿,阿兰,谢谢你!一般来说,我对Python和脚本完全陌生。我不确定我在其他线程中的所有其他建议有什么错误,但我得到了错误。你的建议很管用:)问题解决了。