正则表达式

Regular Expression

正则表达式(Regular Expression)是一种文本模式,可以用来描述和匹配字符串的特定模式。

字符匹配

  1. 普通字符:按字面值匹配

  2. 元字符:具有特殊含义

    • \d:任意数字 = [0-9]
    • \D:任意非数字 = [^\d]
    • \w:任意单词字符(含下划线) = [a-zA-Z0-9_]
    • \W:任意非单词字符 = [^\w]
    • \s:任意空白符 = [\t\n\f\r\p]
    • \S:任意非空白符 = [^\s]
    • . :任意字符(除换行)
    • \n, \r, \t, \v垂直制表符, \f换页, \p回车换行

量词

匹配前面的模式的 次数

  • *: 0次 或 多次
  • +: 1次 或 多次
  • ?: 0次 或 1次
  • {n}: 恰好 n次
  • {n,}: 至少 n次
  • {n,m}: 至少 n次 且 不超过 m次

字符类

  • [ ]: 匹配括号内的任意一个字符
  • [^ ]: 匹配除括号内的字符
  • -: 连字符,表示范围如[a-z]

边界匹配

  • ^: 匹配字符串开头
  • $: 匹配字符串结尾
  • \b: 匹配单词边界
  • \B: 匹配非单词边界

分组和捕获

  • (): 分组和捕获子表达式
  • (?: ): 分组但不捕获

特殊字符

  • \: 转义
  • |: 指定多个模式的选择(或)

前后预查

  • (?= ): 正先行断言-存在
    匹配,如果后面跟随
  • (?! ): 负先行断言-排除
    匹配,如果后面不跟随
  • (?<= ): 正后发断言-存在
    匹配,如果前面存在
  • (?<! ): 负后发断言-排除
    匹配,如果前面不存在

https://regex101.com/

http://t.csdnimg.cn/iW1ou

https://www.cnblogs.com/fozero/p/7868687.html

相关推荐
一级新生7 分钟前
LLM _ Agent _ Skill _ 专家 的关系与选型笔记
java·开发语言·人工智能·笔记·大模型·智能体·skill
2603_9696948519 分钟前
【MySQL学习笔记】DQL(基础查询/条件/聚合/分组/排序/分页)与 DCL(用户权限)全解析
数据库·笔记·学习·mysql·学习方法
Zhao-Jichao44 分钟前
AI Prompting for Everyone 课程笔记 - P08 上下文 Context
人工智能·笔记
鬼手点金1 小时前
Skills:领域能力的可组合单元
java·人工智能·笔记·自动化·1024程序员节
夕除10 小时前
Redis 过期策略
redis·笔记·面试
Nuanyt12 小时前
Agent 学习笔记(下篇三):上线工程、进阶选择与操作界面(Stage 7 / 7.5 / 8 + 延伸路线)
笔记·python·学习·memory·aiagent·harness
叼烟扛炮13 小时前
Linux 学习笔记(四十一):TCP 并发演进——从单进程到多线程服务器
linux·运维·服务器·网络·笔记·学习·tcp/ip
叼烟扛炮13 小时前
Linux 学习笔记(四十三):网络编程进阶——自定义协议解决 TCP 粘包与守护进程
linux·开发语言·网络·笔记·tcp/ip
songyuc14 小时前
【Manskill3】TableSceneBuilder学习笔记
pytorch·笔记·学习
゛凌乱的记忆づ16 小时前
好用的md文件编辑器——TyporaS与Typora
笔记·git·typora·markdown