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

正则表达式(二)-高级应用_谨慎使用

没事建议别瞎用正则表达式,能让后端处理好的数据,尽量后端处理好,减少前端对数据的处理,保证数据原始的完整性,减少前端耗能。(其实就是懒╮(╯▽╰)╭)

1. 分组捕获

分组捕获用于提取匹配的子字符串,使用 () 定义分组。

  • 示例:提取日期中的年、月、日

    (\d{4})-(\d{2})-(\d{2})
    

    输入:2023-10-01
    匹配结果:

    • 分组 1:2023
    • 分组 2:10
    • 分组 3:01
  • 命名分组(部分语言支持,如 Python):

    (?P<year>\d{4})-(?P<month>\d{2})-(?P<day>\d{2})
    

    匹配结果:

    • year2023
    • month10
    • day01

2. 非贪婪匹配

默认情况下,正则表达式是贪婪的,会尽可能匹配更长的字符串。使用 ? 可以实现非贪婪匹配。

  • 示例:匹配 HTML 标签中的内容
    • 贪婪匹配:
      <.*>
      
      输入:<div>Hello</div><p>World</p>
      匹配结果:
http://www.xdnf.cn/news/6193.html

相关文章:

  • Spark之搭建Yarn模式
  • 日本动漫风格人像街拍Lr调色预设,手机滤镜PS+Lightroom预设下载!
  • 【PostgreSQL数据分析实战:从数据清洗到可视化全流程】附录-D. 扩展插件列表(PostGIS/PostgREST等)
  • 搭建Caffeine+Redis多级缓存机制
  • ChatGPT 能“记住上文”的原因
  • nputop:昇腾 NPU 交互式监控工具
  • 基于 NanoDet 的工厂巡检机器人目标识别系统研究与实现​
  • Fluent Bit持久化配置:保障数据可靠传输的关键
  • MVCC:数据库并发控制的利器
  • 【计算机哲学故事1-5】版本更新:拒绝停滞,成长是最好的修复
  • 部署GraphRAG配置Neo4j实现知识图谱可视化【踩坑经历】
  • 【SSL证书系列】https双向认证中客户端认证的原理
  • 边缘计算网关工业物联网应用:空压机远程运维监控管理
  • 自动化 NuGet 包打包与上传:完整批处理脚本详解(含 SVN 支持)
  • MySQL基础原理
  • python之Pandas合并数据终极指南:pd.concat参数详解
  • IDEA 新建 SpringBoot 项目时,没有高版本 SpringBoot 可选
  • Android逆向学习(十) IDA逆向编辑Android so文件
  • 为什么要选择七彩喜数字康养平台?加盟后有何优势?
  • 计算机网络:手机和基站之间的通信原理是什么?
  • 高德地图在Vue3中的使用方法
  • ACM算法
  • ubuntu清除缓存
  • rhel8.1 无法安装应用(提示需要注册系统)
  • 【Ansys 2023 R2 Icepak】 风扇位置优化
  • 作业帮Android面试题及参考答案
  • 第5章 运算符、表达式和语句
  • 下载的旧版的jenkins,为什么没有旧版的插件
  • 【面试 · 四】vue2、vue3、react区别
  • 高防ip支持哪些网络协议