Python正则常用模式总结_实用示例讲解【指导】

冷炫風刃
发布: 2025-12-22 23:15:07
原创
679人浏览过
Python正则表达式高频应用包括:数字匹配(如\d+、\d{3}-\d{4}-\d{4})、邮箱与URL提取、噪声清理(re.sub去空格/标签/中文)、格式验证(fullmatch+先行断言)。

python正则常用模式总结_实用示例讲解【指导】

Python正则表达式re模块)是文本处理的利器,但初学者常被语法绕晕。掌握几个高频、实用的模式,就能解决80%的日常需求——比如提取手机号、邮箱、日期,过滤空格或标签,验证格式是否合规。

匹配数字与连续数字串

数字是最基础也最常用的匹配目标。用\d代替[0-9]更简洁;加+表示“一个或多个”,*表示“零个或多个”。

  • r'\d+':匹配至少一位数字,如"abc123def""123"
  • r'\d{3}-\d{4}-\d{4}':匹配形如"138-1234-5678"的手机号分段格式
  • r'\b\d{6}\b':用\b确保是独立6位数(如邮编),避免匹配到"1234567"中的子串

提取邮箱与URL等结构化文本

邮箱和URL有较固定规律,可借助字符类和量词组合写出稳健模式。

  • r'[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}':覆盖主流邮箱格式(支持下划线、+号别名等),{2,}防止误匹配.c
  • r'https?://[^\s]+' :匹配以http://https://开头、直到空白符为止的URL(简单有效,适合日志清洗)
  • 注意:不建议用正则“完美”校验邮箱——RFC标准太复杂,生产环境推荐用专用库(如email-validator

清理与替换常见噪声

数据预处理中,去空格、删HTML标签、合并换行是高频操作,re.sub()配合合适模式即可一行搞定。

通义灵码
通义灵码

阿里云出品的一款基于通义大模型的智能编码辅助工具,提供代码智能生成、研发智能问答能力

通义灵码 304
查看详情 通义灵码

立即学习Python免费学习笔记(深入)”;

  • re.sub(r'\s+', ' ', text):把所有空白符(空格、制表、换行)替换成单个空格
  • re.sub(r']+>', '', html_text):粗略去除HTML标签(不处理嵌套或自闭合标签,简单页面够用)
  • re.sub(r'[\u4e00-\u9fff]+', '', text):移除中文(Unicode范围),适用于只需英文数字的场景

验证格式是否符合要求

re.fullmatch()^...$确保整个字符串完全匹配,避免部分匹配导致误判。

  • 手机号验证(国内):re.fullmatch(r'1[3-9]\d{9}', phone) —— 必须是11位、以13–19开头
  • 密码强度(含大小写字母+数字,至少8位):r'^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{8,}$',利用正向先行断言((?=...))做多条件检查
  • 日期(YYYY-MM-DD):r'^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$',限制月份和日期范围,比单纯\d{4}-\d{2}-\d{2}更可靠

正则不是越长越强,而是越准越稳。从实际问题出发,先写样本数据,再小步调试模式,比死记语法更有用。多数时候,一个清晰的\d+[^@]+@[^@]+\.[^@]+就已足够——不复杂但容易忽略细节。

以上就是Python正则常用模式总结_实用示例讲解【指导】的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号