当前位置: 首页>前端>正文

python 正则表达式练习题

Python 正则表达式练习题

正则表达式是一种用来匹配字符串模式的强大工具,它可以帮助我们在文本中快速地查找、替换和提取信息。在 Python 中,我们可以通过 re 模块来使用正则表达式。本文将为大家提供一些正则表达式练习题,并附带相应的代码示例,帮助大家更好地理解和掌握正则表达式的使用。

什么是正则表达式

正则表达式是一种由普通字符(例如 az)和特殊字符(元字符)组成的字符串,通过一定的模式描述匹配的字符串。例如,[0-9] 可以匹配任意的数字字符。在 Python 中,我们可以使用 re 模块来处理正则表达式。

正则表达式练习题

1. 匹配手机号码

请编写一个正则表达式,匹配中国境内的手机号码。手机号码的格式为 11 位数字,以 1 开头。

import re

pattern = r'^1\d{10}$'
phone_numbers = ['13912345678', '18888888888', '12345678901', '13456789012']

for phone_number in phone_numbers:
    if re.match(pattern, phone_number):
        print(f'{phone_number} 是有效的手机号码')
    else:
        print(f'{phone_number} 不是有效的手机号码')

2. 提取邮箱地址

请编写一个正则表达式,从文本中提取所有的邮箱地址。邮箱地址的格式为 xxx@xxx.xxx

import re

text = '联系我,请发送邮件至 abc@example.com 或者 xyz@test.com'
pattern = r'\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b'
emails = re.findall(pattern, text)

for email in emails:
    print(f'提取到的邮箱地址:{email}')

可视化数据

下面将使用饼状图和序列图来展示正则表达式匹配结果。

饼状图

pie
    title 正则表达式匹配结果
    "有效手机号码" : 2
    "无效手机号码" : 2

序列图

sequenceDiagram
    participant User
    participant System

    User ->> System: 请求匹配手机号码
    System ->> System: 执行正则表达式匹配
    System -->> User: 返回匹配结果

总结

通过以上的正则表达式练习题,我们学习了如何使用 Python 中的 re 模块来处理正则表达式。正则表达式在文本处理、数据提取等方面有着广泛的应用,掌握好正则表达式的使用将会对我们的编程能力有所提升。希望本文能够帮助大家更好地理解和运用正则表达式。祝大家编程愉快!


https://www.xamrdz.com/web/26m1964497.html

相关文章: