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

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

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

string = "Please contact [email protected] for assistance"

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

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

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

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

string = "Please contact [email protected] for assistance"
pat = r‘([\w\.-]+)@([\w\.-]+)(\.[\w\.]+)‘

match = re.search(pat,string)
if match:
 print(match.group())

运行结果:

>>>
[email protected]
>>>

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

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

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

原文地址:https://www.cnblogs.com/dustman/p/10048507.html

时间: 2024-10-14 00:44:26

Python学习手册之正则表达式示例--邮箱地址提取的相关文章

《Python学习手册 第五版》 -第11章 赋值、表达式和打印

上一章对Python的语句和语法已经进行了基本的说明,接下来就是每个章节的详细说明,本章的主要内容就是标题中涵盖的三点:赋值语句.表达式语句.打印语句 本章重点内容如下: 1.赋值语句 1)赋值语句的特点(注意事项) 2)赋值语句的形式:基本形式.元组及列表解包赋值.序列赋值.扩展的序列解包.多目标赋值.增量赋值 3)变量命名规则 2.表达式语句 1)常见的表达式语句 2)表达式语句和原位置修改 3.打印操作 1)调用形式 2)应用示例 以下是针对以上重点内容的详细说明 1.赋值语句 1)赋值语

《Python学习手册 第五版》 -第12章 if测试和语法规则

本章节的内容,主要讲解if语句,if语句是三大复合语句之一(其他两个是while和for),能处理编程中大多数逻辑运算 本章的重点内容如下: 1.if语句的基本形式(多路分支) 2.布尔表达式 3.if三元表达式 以下是针对重点内容的详细说明 1.if语句的基本形式 if语句是根据测试结果,从一些备选的操作中做出选择的语句,也就是说要先计算测试结果,再选择做什么,基本形式如下: if test1: statements1 elif test2: statements2 else: stateme

《Python学习手册 第五版》 -第16章 函数基础

前面的章节讲解的是一些基础数据类型.基本语句使用和一些文档查看的内容,这些都是一些基础,其实还谈不上入门,只有了解了函数,才算入门 函数是编程里面使用最多的也是最基本的程序结构, 本章重点内容 1.函数 1)什么是函数? 2)为什么使用函数? 2.编写函数 1)函数的基本格式 2)定义和调用函数 3)函数的多态.局部变量 接下来针对本章重点,展开详细的说明 1.函数 1)什么是函数? 这里没有严格的定义,用通俗易懂的方式来说: 函数就是将一些语句集合在一起的组件,从而让他们能够不止一次的在程序中

Java 正则表达式匹配邮箱地址

作者 : 卿笃军 正则表达式中的部分元字符: 元字符 正则表达式中的写法 意义 . . 代表任意一个字符 \d \\d 代表0~9的任何一个数字 \D \\D 代表任何一个非数字字符 \s \\s 代表空白字符,如:'\t','\n' \S \\S 代表非空白字符 \w \\w 代表柯用作标示符的字符,单不包括'$' \W \\W 代表不可用作标示符的字符 . . 正则表达式,限定修饰符: 限定修饰符 意义 示例 ? 0次或1次 A? * 0次或多次 A* + 1次或多次 A+ {n} 正好出现

Python学习手册笔记

之前为了编写一个svm分词的程序而简单学了下Python,觉得Python很好用,想深入并系统学习一下,了解一些机制,因此开始阅读<Python学习手册(第三版)>.如果只是想快速入门,我在这里推荐了几篇文章,有其他语言编程经验的人简单看一看就可以很快地开始编写Python程序了. 黑体表示章节, 下划线表示可以直接在原文对应位置查到的专有技术名词. 原书配套答案请到http://www.hzbook.com/Books/4572.html下载,简单注册即可. 第三章 如何运行程序 impor

《Python学习手册》读书笔记【转载】

转载:http://www.cnblogs.com/wuyuegb2312/archive/2013/02/26/2910908.html 之前为了编写一个svm分词的程序而简单学了下Python,觉得Python很好用,想深入并系统学习一下,了解一些机制,因此开始阅读<Python学习手册(第三版)>.如果只是想快速入门,我在这里推荐了几篇文章,有其他语言编程经验的人简单看一看就可以很快地开始编写Python程序了. 黑体表示章节, 下划线表示可以直接在原文对应位置查到的专有技术名词. 原书

python学习手册中的一些易忘的点(4-7部分)

有时间系统看一遍python学习手册,记录一些易忘点 1.python函数高聚合低耦合1)对于输入使用参数并且对于输出使用return2)只有在真正必要的情况下使用全局变量3)不要改变可变类型的参数,除非调用者希望这样做4)每个函数都应该有一个单一的.统一的目标5)每一个函数应该相对较小6)避免直接改变在另一个文件中的变量 2.递归处理任意结构>>> a=[3,[2,[2,3,4],2],1,[1,5,[1,3,3]]]>>> def sumtree(L):...  

分享《Python学习手册(第4版)》高清中文PDF+高清英文PDF+源代码

下载:https://pan.baidu.com/s/1b7P9O6cHVBqce83G-zoJew 更多资料:http://blog.51cto.com/3215120 <Python学习手册(第4版)>高清中文PDF+高清英文PDF+源代码 高清中文PDF,1162页,带书签目录,文字可以复制.高清英文PDF,1594页,带书签目录,文字可以复制.中英文两版对比学习.配套源代码. 其中,中文版如图: 原文地址:http://blog.51cto.com/3215120/2316529

分享《Python学习手册(第4版)》+PDF+源码+Mark Lutz+刘军

下载:https://pan.baidu.com/s/1ewYKsSHlowrsAYoeqCfNbA 更多资料:http://blog.51cto.com/14087171 <Python学习手册(第4版)>高清中文PDF+高清英文PDF+源代码 高清中文PDF,1162页,带书签目录,文字可以复制.高清英文PDF,1594页,带书签目录,文字可以复制.中英文两版对比学习.配套源代码. 其中,中文版如图: 原文地址:http://blog.51cto.com/14087171/2321655