阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

在Linux中使用grep正则表达式入门

1次阅读
没有评论

共计 1205 个字符,预计需要花费 4 分钟才能阅读完成。

正则表达式是一种符号表示法,用于识别文本模式。Linux 处理正则表达式的主要程序是 grep。grep 搜索与正则表达式匹配的行,并将结果输送至标准输出。

grep 匹配模式

grep 按下述方式接受选项和参数(其中,regex 表示正则表达式)

grep [options] regex [files]

其中 options 主要为下表:

选项	含义	功能描述
-i	ignore case	忽略大小写
-v	invert match	不匹配匹配的
-l	file-with-match	输出匹配的文件名
-L	file-without-match	输出不匹配的文件名
-c	count	输出匹配的数目(行数)-n	number	输出匹配行的同时在前面加上文件名及在文件名中的行数
-h	no-filename	抑制文件名的输出

举例说明

假设有三个文件 del1、del2、del3 三个文件的内容如下
在 Linux 中使用 grep 正则表达式入门

例子

在 Linux 中使用 grep 正则表达式入门

特殊字符
符号	含义	                举例
^	开始标记	                "^abc" 满足的例子 abc、abcd
^	非(在 [] 内)"[^abc]" 满足的例子:ddd、mpd
$	结束标记”abc$”满足的例子 abc、mmabc
.	任意字符          	"a.c" 满足的例子 abc、fapcc
\	匹配单词结束        	"abc\>" 满足的例子 abc、pmrabc
|	或	                "AAA|BBB" 满足的例子 AAA、BBBpp
范围
符号	含义	                                                         举例
?	匹配前一个字符 0 或 1 次	                                       "abc?" 满足的例子 ab、mabcd
*	匹配前一个字符≥0 次	                                       "abc*" 满足的例子 abbb、abcdk
+	匹配前一个字符≥1 次	                                       "abc+" 满足的例子 abcd、abcccdd
{}	{m}、{m,n}、{m,}、{,n}分别为匹配前一个字符 m 次、m 到 n 次、≥m 次、≤n 次  "abc\{3,5\}" 满足的例子 abcccc、abcccccc
[]	[]内如果不是范围,选其一;是范围的话,范围内选其一	               "m[abc]p" 满足的例子 acpd;m[1-9]p 满足的例子 m8pp
()	将候选的所有元素放在 () 内,用 | 隔开	                               "a(1|2|3)bc" 满足的例子 a1bc、mba3bcd

注意:{}在郑则表达式中需要转移,而 {}() 不需要。

注意理解 {} 范围的例子:
在 Linux 中使用 grep 正则表达式入门

标准字符类
字符类	释义
[:alnum:]	字母和数字,与 [A-Za-z0-9] 等价
[:word:]	[:alnum:]加上下划线_
[:alpa:]	字母,与 [A-Za-z] 等价
[:digit:]	数字,与 [0-9] 等价
[:xdigit:]	十六进制字符,与[0-9A-Fa- f 等价]
[:blank:]	空格和制表符
[:graph:]	可见字符,靠扩 33~126
[:lower:]	小写字母
[:upper:]	大写字母
[:print:]	可打印字符
[:space:]	空白字符,等价于[\t\r\n\v\f]
[:punct:]	标点符号
[:cntrl:]	ASCII 控制码,包括字符 0~31 以及 127

阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

代金券:在阿里云专用满减优惠券

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2025-01-01发表,共计1205字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中