Python正则表达式实战案例_文本匹配与替换技巧【教程】


Python正则表达式重在解决实际文本问题:1.手机号提取需兼顾格式与防误匹配;2.日志清洗用re.sub去除时间戳和IP;3.文件重命名靠捕获组调换顺序;4.邮箱识别需边界控制并生成mailto链接。

python正则表达式实战案例_文本匹配与替换技巧【教程】

Python正则表达式不是背语法,而是解决实际文本问题的工具。掌握几个典型场景的写法,比记满页符号更有用。

提取手机号:兼顾常见格式和防误匹配

国内手机号通常为11位,以1开头,第二位常见3-9;但要注意避开“110”“119”等特殊号段,也别把带分隔符的字符串(如138-1234-5678)错当有效号码。

  • 基础匹配:r'1[3-9]\d{9}' —— 精准抓纯数字11位手机号
  • 支持空格/短横线:r'1[3-9]\d{2}[-\s]?\d{4}[-\s]?\d{4}'注意?表示前面的分隔符可有可无
  • 防止匹配到更长数字中的子串:用 \b(词边界)包住,如 r'\b1[3-9]\d{9}\b'

清洗日志行:去掉时间戳和IP,保留核心信息

服务器日志常形如 [2025-03-15 14:22:08] 192.168.1.100 "GET /api/user HTTP/1.1" 200,想只留请求路径和状态码。

  • 先用 re.sub() 去掉开头时间:re.sub(r'^\[.*?\]\s+', '', line)
  • 再删IP和引号包裹的请求行:re.sub(r'\d+\.\d+\.\d+\.\d+\s+"[^"]*"\s+', '', line)
  • 组合起来更简洁:re.sub(r'^\[.*?\]\s+\d+\.\d+\.\d+\.\d+\s+"[^"]*"\s+', '', line)

批量重命名文件:从“report_20250315_v2.txt”改成“2025-03-15-report-v2.txt”

关键在捕获年月日并插入分隔符,同时调换字段顺序。

代码小浣熊 代码小浣熊

代码小浣熊是基于商汤大语言模型的软件智能研发助手,覆盖软件需求分析、架构设计、代码编写、软件测试等环节

代码小浣熊 429 查看详情 代码小浣熊

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

  • 匹配原名结构:r'report_(\d{4})(\d{2})(\d{2})_v(\d+)\.txt',括号用于分组捕获
  • 替换为:r'\1-\2-\3-report-v\4.txt',\1 \2 \3 \4 对应四个捕获组
  • 完整示例:re.sub(r'report_(\d{4})(\d{2})(\d{2})_v(\d+)\.txt', r'\1-\2-\3-report-v\4.txt', filename)

识别并高亮邮箱:在HTML中给邮箱加mailto链接

不是简单找@,要确保前后是合理字符边界,避免匹配到“abc@def@ghi”或“email@test.”这种无效串。

  • 推荐邮箱模式:r'\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b'
  • 配合 re.sub() 生成链接:re.sub(r'(\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b)', r'<a href="https://www.php.cn/link/8b4992492aec60aac6ba3fd5ee5d93ec">\1</a>', text)
  • 注意:真实项目建议用 email-validator 库校验,正则仅作初步筛选

以上就是Python正则表达式实战案例_文本匹配与替换技巧【教程】的详细内容,更多请关注其它相关文章!


# python  # 相关文章  # dede网站代码优化  # 城厢seo网站推广  # 抖店营销活动推广  # 常州网站建设关键词推广  # 沁阳网站推广优化选哪家  # 上海seo工具哪个好用  # 网站设计的建设目的  # 地产营销推广计划书  # 开餐饮店如何做营销推广  # 承德营销型网站推广公司  # 可有可无  # 解决问题  # 中文网  # 几个  # 参数设置  # 重命名  # 分隔符  # 小浣熊  # python正则表达式  # 状态码  # 邮箱  # ai  # 工具  # 正则表达式  # html 


相关栏目: 【 Google疑问12 】 【 Facebook疑问10 】 【 优化推广96088 】 【 技术知识133117 】 【 IDC资讯59369 】 【 网络运营7196 】 【 IT资讯61894


相关推荐: b站怎么查看视频的码率_b站视频码率查看方法  TikTok搜索结果不显示怎么办 TikTok搜索刷新与优化方法  猫眼电影app如何参与官方的抽奖活动_猫眼电影官方抽奖参与方法  《下一站江湖2》大雪山加入方法  谷歌学术论文搜索引擎 谷歌学术官网入口论坛永久链接  《漫蛙manwa2》防走失网页版链接2025  谷歌邮箱怎么换绑定邮箱Gmail安全备份邮箱修改方法  解决CSS布局中意外顶部空白问题的教程  PHP多语言网站的实现:会话管理与翻译函数优化教程  《杖剑传说》食谱大全  红手指专业版app注册教程  漫蛙manwa官网浏览入口_漫蛙漫画网页版访问链接  哔哩哔哩的|直播|间怎么送礼物_哔哩哔哩|直播|送礼操作指南  《雷电模拟器》截图方法介绍  睡觉时心跳快是什么原因 夜间心悸如何应对  奥克斯空调不制热啥毛病_奥克斯空调不制热原因分析及解决技巧  Golang如何使用crypto/md5生成哈希_Golang MD5哈希生成方法  《单词速记宝》设置学习计划方法  毒蘑菇VOLUMESHADER_BM官网首页登录入口 毒蘑菇VOLUMESHADER_BM官网首页登录入口说明  uc浏览器官网网页版使用 uc浏览器官网免费在线首页  火狐浏览器如何刷新修复浏览器 火狐浏览器“重置Firefox”功能详解  Yandex无需登录畅游 俄罗斯搜索引擎最新官网指南  win11自带录屏文件保存在哪里 Win11 Game Bar录制视频默认路径【分享】  有道AI翻译入口 智能写作官方网站入口  《下一站江湖2》心法融合技巧  Google Cloud Functions 时区处理指南:理解与最佳实践  创客贴登录页面入口 创客贴网页版最新网址链接  《360浏览器》自动保存账号密码设置方法  126邮箱申请入口官网_126邮箱注册免费登录2025  《随手记》备份数据方法  优酷官网登录入口电脑版 优酷官网网址入口  《知到》打卡课程方法  智慧职教mooc平台登录网址 智慧职教mooc官网直达  Chart.js 教程:自定义插件实现图表与图例间距调整  Python对象引用与属性赋值:理解链表中的行为  漫蛙官网(首页入口)_漫蛙漫画稳定访问教程分享  HTML Canvas文本样式定制指南:解决外部字体加载与应用难题  WooCommerce购物车:强制显示所有交叉销售商品教程  键盘保修需要什么_键盘售后维修流程  Win10怎么设置快速启动 Win10开启快速启动设置方法  search中maxlength属性用法解析  diskgenius分区工具如何设置Bios启动项  163邮箱网页版入口 163邮箱在线使用  苹果电脑如何快速截图并编辑 苹果电脑截屏标注快捷操作  虫虫助手如何更新游戏  微信网页版在线登录 微信网页版在线使用入口  申通快递查询 申通物流快递单实时查询入口  win11如何运行chkdsk命令 Win11检查和修复磁盘逻辑错误教程【修复】  《绝区零》2.3前瞻|直播|内容介绍  word表格如何按某一列内容进行排序_Word表格按列排序方法 

 2025-12-18

了解您产品搜索量及市场趋势,制定营销计划

同行竞争及网站分析保障您的广告效果

点击免费数据支持

提交您的需求,1小时内享受我们的专业解答。

运城市盐湖区信雨科技有限公司


运城市盐湖区信雨科技有限公司

运城市盐湖区信雨科技有限公司是一家深耕海外推广领域十年的专业服务商,作为谷歌推广与Facebook广告全球合作伙伴,聚焦外贸企业出海痛点,以数字化营销为核心,提供一站式海外营销解决方案。公司凭借十年行业沉淀与平台官方资源加持,打破传统外贸获客壁垒,助力企业高效开拓全球市场,成为中小企业出海的可靠合作伙伴。

 8156699

 13765294890

 8156699@qq.com

Notice

We and selected third parties use cookies or similar technologies for technical purposes and, with your consent, for other purposes as specified in the cookie policy.
You can consent to the use of such technologies by closing this notice, by interacting with any link or button outside of this notice or by continuing to browse otherwise.