良许Linux教程网 干货合集 详解grep正则表达式

详解grep正则表达式

正则表达式只是字符串的一种描述,只有和支持正则表达式的工具相结合才能进行字符串处理,本篇文中重点为大家讲解一下grep正则表达式具体使用方法。

详解grep正则表达式

grep匹配模式

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

‎格雷普 [选项] 雷格克斯 [文件]‎

其中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正则表达式入门

例子

在Linux中使用grep正则表达式入门在Linux中使用grep正则表达式入门
在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正则表达式入门在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

以上就是良许教程网为各位朋友分享的Linux系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !

img
本文由 良许Linux教程网 发布,可自由转载、引用,但需署名作者且注明文章出处。如转载至微信公众号,请在文末添加作者公众号二维码。
良许

作者: 良许

良许,世界500强企业Linux开发工程师,公众号【良许Linux】的作者,全网拥有超30W粉丝。个人标签:创业者,CSDN学院讲师,副业达人,流量玩家,摄影爱好者。
上一篇
下一篇

发表评论

邮箱地址不会被公开。 必填项已用*标注

联系我们

联系我们

公众号:良许Linux

在线咨询: QQ交谈

邮箱: yychuyu@163.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部