为了演示正则表达式的示例用法,让我们创建一个程序来从字符串中提取电子邮件地址。
假设我们有一个包含电子邮件地址的文本:
str = "Please contact info@sololearn.com for assistance"
我们的目标是提取子字符串 "info@sololearn.com".。
一个基本的电子邮件地址由一个单词组成,可以包括点或破折号。其次是@符号和域名(名称、点和域名后缀)。
这是构建正则表达式的基础。
pattern = r"([\w\.-]+)@([\w\.-]+)(\.[\w\.]+)"
[\w\.-]+匹配一个或多个单词字符,点或破折号。
上面的正则表达式表示字符串应该包含一个单词(允许使用点号和破折号),后面跟@符号,然后是另一个类似的单词,然后是点号和另一个单词。
我们的正则表达式包含三组:
1 -电子邮件地址的第一部分。
2 -域名没有后缀。
3 -域后缀。