正则表达式指令

正则

时间匹配

\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}

1. 问号相关

应用场景对比表
语法类型 典型场景 示例用途
量词{0,1} ? 可选内容匹配 http(s?) 匹配协议
非贪婪 *? 提取最短内容 <div>.*?</div> 匹配标签
预查断言 (?=)(?!) 密码复杂度验证 (?=.*\d)(?=.*[A-Z])
非捕获组 (?:) 组合多个选项 (?:jpg)
命名组 (?P<>) 结构化数据提取 日志解析、字段提取
模式修饰符 (?i) 局部忽略大小写 混合大小写的关键字匹配

其他修饰符

修饰符 名称 作用范围 功能描述
i Case Insensitive 全局或局部 忽略大小写匹配
m Multiline 全局或局部 使 ^ 和 $ 匹配每行的开头和结尾(而非整个字符串)
s Dot All 全局或局部 让 . 匹配包括换行符(\n)在内的所有字符
g Global 全局(部分语言) 全局匹配(如 JavaScript 中启用多次匹配)
u Unicode 全局或局部 启用完整的 Unicode 支持(如处理四字节字符)
x Extended 全局或局部 忽略正则中的空白和注释(允许格式化编写复杂正则)
A Anchored 全局(PCRE) 强制从目标字符串开头开始匹配(类似 ^ 但更严格)
D Dollar End Only 全局(PCRE) 使 $ 仅匹配字符串末尾(默认行为,与 m 修饰符冲突时需注意)
U Ungreedy 全局(PCRE) 反转量词的贪婪性(* 和 + 变为非贪婪,*? 和 +? 变为贪婪)
posted @ 2025-12-18 16:29  庶旁  阅读(14)  评论(0)    收藏  举报