首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >【python 正则表达式:太复杂了所以通过练习-2(邮箱-IP地址)】编写常见格式的字符串的正则表达式来由浅入深的认识它

【python 正则表达式:太复杂了所以通过练习-2(邮箱-IP地址)】编写常见格式的字符串的正则表达式来由浅入深的认识它

作者头像
flos chen
发布2026-01-23 15:05:10
发布2026-01-23 15:05:10
1270
举报

3. 邮箱

编写一个程序,从字符串中匹配邮箱地址。
邮箱地址的格式为:
  1. @之前包含任意长度的包含[a-zA-Z0-9_]字符都可以。
  2. @之后点之前也是如此。
  3. 点之后也是如此。
代码如下:
代码语言:javascript
复制
import re
def match_email(string):
    pattern = r"^[a-zA-Z0-9_]+@[a-zA-Z0-9]+\.[a-zA-Z0-9]+$"
    match = re.match(pattern, string)
    if match:
        return True
    else:
        return False
string = "abc@example.com"
print(match_email(string)) # True
string = "user_123@example.co.uk"
print(match_email(string)) # True
string = "info@domain.com.cn"
print(match_email(string)) # True
解释
  1. ^$是开始和结束的标志;
  2. @之前必须是 [a-zA-Z0-9_] 中的字符,数量不限;
  3. @之后到 . 之前也是如此;
  4. . 之后也是如此;
我们学到了什么
  1. 知道了开始和结束的标志是 ^ $;
  2. 知道了原来字符的位置有如此严格的占位限制;
  3. 知道了 [] 代表字符集合;
  4. 知道了 a-zA-Z0-9 区间可以这样的连接起来写;
  5. 知道了 + 代表匹配前一位的字符1-无限次,且要写在需要匹配的字符后一位;
  6. 知道了 . 代表字符 . ,\是为了转义;

4. IP地址

编写一个程序,从字符串中匹配 IP 地址。
IP 地址的格式为:
  1. 4 位数字表示 IP 地址。
  2. 每个数字之间用点分隔。
代码如下:
代码语言:javascript
复制
import re

def match_ip_address(string):
    pattern = r"^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$"
    match = re.match(pattern, string)
    if match:
        return True
    else:
        return False
string = "192.168.0.1"
print(match_ip_address(string))  # True
string = "172.16.58.3"
print(match_ip_address(string))  # True
string = "255.255.255.255"
print(match_ip_address(string))  # True
解释
  1. ^$是开始和结束的标志;
  2. \d表示后面部分是一个数字,{1,3}表示这样的数字有1-3个,不限区间0-9;
我们学到了什么
  1. 知道了开始和结束的标志是 ^ $;
  2. 知道了原来字符的位置有如此严格的占位限制;
  3. 知道了 \d 代表数字匹配;
  4. 知道了 {} 代表要匹配多少次;
  5. 知道了 . 代表字符 . ,\是为了转义;

欢迎留言讨论。

下一部分 URL 统一资源定位器

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2026-01-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 3. 邮箱
    • 编写一个程序,从字符串中匹配邮箱地址。
    • 代码如下:
    • 解释
    • 我们学到了什么
  • 4. IP地址
    • 编写一个程序,从字符串中匹配 IP 地址。
    • 代码如下:
    • 解释
    • 我们学到了什么
  • 欢迎留言讨论。
  • 下一部分 URL 统一资源定位器
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档