Python学习手册之正则表达式示例–邮箱地址提取

Python学习手册之正则表达式示例–邮箱地址提取Python学习手册之正则表达式示例–邮箱地址提取

大家好,又见面了,我是你们的朋友全栈君。

在上一篇文章中,我们介绍了 Python 的捕获组和特殊匹配字符串,现在我们介绍 Python 的正则表达式使用示例。查看上一篇文章请点击:https://www.cnblogs.com/dustman/p/10040430.html

邮箱地址提取
为了演示正则表达式的示例用法,我们创建一个从字符串中提取电子邮箱地址的程序。假设我们有一个包含电子邮箱地址的字符串。

string = "Please contact media@nostarch.com for assistance"

我们希望提取出类似 media@nostarch.com 的字符串。一个典型的电子邮件地址由一个词组成,可以包括点或破折号。接下来是@符号和域名 (名词、一个点和域名后缀) 。下面我们来构建正则的基础框架。

pat = r'([\w\.-]+)@([\w\.-]+)(\.[\w\.]+)'

[\w\.-]+ 匹配一个或多个字符串,点或破折号。上面的正则表达式表示字符串应该包含一个单词 (包含点和破折号) , 后面跟着 @ 符号,接着是另一个类似的单词,然后是一个点和另一个单词。

我们的正则包含三个组: 1、 电子邮箱的第一部分用户名 2、 无后缀的域名 3、 域名的后缀

import re string = "Please contact media@nostarch.com for assistance" pat = r'([\w\.-]+)@([\w\.-]+)(\.[\w\.]+)' match = re.search(pat,string) if match: print(match.group())

运行结果:

>>> media@nostarch.com >>>

如果字符串包含多个电子邮件地址,我们可以使用 re.findall 方法而不是 re.search 来提取电子邮件地址。

本文中的正则实例只是为了演示目的,在现实情况下需要更复杂的正则表达式才能完全验证电子邮件地址。

 

 

 

 “如果你想战胜恐惧,不要坐在家里空想,走出去,动起来。” – 戴尔·卡耐基

转载于:https://www.cnblogs.com/dustman/p/10048507.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/107168.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • intelj idea 2021 激活码[免费获取]

    (intelj idea 2021 激活码)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~MLZP…

    2022年3月20日
    218
  • 将 VSCode 快捷键修改为 eclipse的快捷键[通俗易懂]

    将 VSCode 快捷键修改为 eclipse的快捷键[通俗易懂]文章目录1、VSCode中打开`命令面板`,如下图所示。2)在命令面板中输入`keyboard`3)打开`首选项:打开键盘快捷方式(JSON)`4)在`keybindings.json`中配置快捷键配置1(常用的快捷键)配置2(最全的快捷键)1、VSCode中打开命令面板,如下图所示。2)在命令面板中输入keyboard在命令面板中输入keyboard,然后在列表中选择首选项:打开键盘快捷方式(JSON):3)打开首选项:打开键盘快捷方式(JSON)点击

    2022年6月3日
    97
  • CODEIF_变量取名「建议收藏」

    CODEIF_变量取名「建议收藏」网址https://unbug.github.io/codelf/大部分开发者都或多或少遇到过变量命名的烦恼,如果命名不规范,不仅会影响开发的效率,而且对后面维护的同学来说也是一个不小的挑战,因为他要去揣摩你这个变量的含义。“计算机科学里两件最难的事:缓存失效和命名。”Codelf通过搜索在线开源平台Github,Bitbucket,GoogleCode,Codeplex,Sou…

    2022年4月19日
    430
  • contemptible_bank conflict

    contemptible_bank conflict本作品采用知识共享署名-非商业性使用-相同方式共享4.0国际许可协议进行许可。本作品(李兆龙博文,由李兆龙创作),由李兆龙确认,转载请注明版权。

    2022年9月21日
    0
  • ssh整合之后始终无法访问到action,报404错误

    ssh整合之后始终无法访问到action,报404错误

    2021年8月26日
    54
  • linux安装redis 完整步骤

    linux安装redis 完整步骤最近在linux服务器上需要安装redis,来存放数据,增加用户访问数据的速度,由于是第一次安装,于是在百度上搜了一篇文章,按照这篇博客,顺利安装好了,因此将博主的文章拷过来记录一下,方便以后使用,也为需要的朋友提供一个方便,参考博文地址:https://www.cnblogs.com/lauhp/p/8487029.html安装:1.获取redis资源  wgethttp://download…

    2022年6月28日
    29

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号