正则表达式RE

目录

正则表达式RE

正则表达式基本元字符

正则表达式拓展元字符


正则表达式RE

正则表达式基本元字符

正则表达式拓展元字符

用来处理文本

正则表达式(Regular Expression, RE)是一种字符模式, 用于在查找过程中匹配指定的字符. 在大多数程序里, 正则表达式都被置于两个正斜杠之间;

例如/l[oO]ve/就是由正斜杠界定的正则表达式, 它将匹配被查找的行中任何位置出现的相同模式. 在正则表达式中,元 字符是最重要的概念

元字符使正则表达式具有处理能力。所谓元字符就是指ß那些在正则表达式中具有特殊意义的专用字符,可以用来规定 其前导字符(即位于元字符前面的字符)在目标对象中的出现模式。

正则表达式基本元字符

复制代码
 基本正则表达式元字符 
 元字符
 示例                      功能
 ^                       行首定位符
 ^love 
 ​
 $                       行尾定位符
 love$ 
 ​
 .                       匹配单个字符
 l..e  
 ​
 *                       匹配前导符0到多次 全部匹配 grep "o*" /etc/passwd
 ab*love 
 ​
 .*                      匹配任意多个字符  (贪婪匹配
 ​
 []                      匹配方括号中任意一个字符
 [lL]ove
 ​
 [ - ]                   匹配指定范围内的一个字符
 [a-z0-9]ove             
 ​
 [^]                     匹配不在指定组里的字符
 [^a-z0-9]ove 
 ​
 \                       用来转义元字符
 love\.                  
 ​
 \<                      词首定位符 #由数字或字母组成的
 \<love
 ​
 \>                      词尾定位符
 love\>

正则表达式拓展元字符

复制代码
 = 等于 != 不等于  =~  匹配
 扩展正则表达式元字符
 +                       匹配一个或多个前导字符
 [a-z]+ove
 ​
 ?                       匹配零个或一个前导字符 
 lo?ve
 "r.*t"                  贪婪匹配
 -P "r.*?"               非贪婪匹配
 ​
 a|b                     匹配a或b
 love|hate
 ​
 ()                      组字符loveable|rs
 love(able|rs) ov+ ov+ (ov)+ 
 (oo)+                   两个oo出现一次或者多个
 ​
 (..)(..)\1\2            标签匹配字符  #
 (love)able\1er
 ​
 x{m}                    字符x重复m次
 o{5}
 o{,3}                   字符最多出现3次
 x{m,}                   字符x重复至少m次
 o{5,}                   字符最少出现5次
 ​
 x{m,n}                  字符x重复m到n次
 o{5,10}
 ​
 grep -E "o{3}"  /etc/passwd
 grep -P "\s" /etc/passwd
 grep -P "\d" /etc/passwd
相关推荐
Rubin智造社16 小时前
Claude Code开发者大会系列2|“饮鸩止渴”还是“即刻解药”?Anthropic与SpaceX的联姻内幕
大数据·数据库·人工智能·开发者大会·anthropic·claude code
噢,我明白了16 小时前
表单的完整 CRUD 练习【极简个人记账本】(含前端后端链接mySQL)
java·前端·数据库·mysql
2301_8092047018 小时前
bootstrap怎么实现鼠标悬停切换图片预览功能
jvm·数据库·python
小短腿的代码世界1 天前
Qt 股票订单撮合引擎:高频交易系统的核心心脏
开发语言·数据库·qt·系统架构·交互
JosieBook1 天前
【数据库】时序数据库选型指南:从数据模型到大模型智能分析
数据库·时序数据库
小猿姐1 天前
Clickhouse Kubernetes Operator 实测:哪种方案更适合生产?
运维·数据库·kubernetes
2501_921939261 天前
MHA高可用
数据库·mysql
彩色的黑'''1 天前
[root@localhost ~]#,Linux系统的命令提示符为啥现在变成-bash-4.2#了,哪里设置的
linux·运维·bash
_Evan_Yao1 天前
MySQL 基础:SELECT、WHERE、JOIN 的第一次使用
数据库·mysql
源远流长jerry1 天前
Linux 网络发送机制深度解析:从应用到网线
linux·服务器·网络·网络协议·tcp/ip