正则表达式RE

发布时间:2024年01月06日

目录

正则表达式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
文章来源:https://blog.csdn.net/zbw0323/article/details/135410861
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。