Linux---shell正则表达式---egrep

Linux—shell正则表达式—egrep

一.扩展正则表达式

​ 通常情况下会使用基础正则表达式就已经足够了,但有时为了简化整个指令,需要使用范围更广的扩展正则表达式。例如,使用基础正则表达式查询除文件中空白行与行首为“#” 之外的行(通常用于查看生效的配置文件),执行“grep –v‘^KaTeX parse error: Expected group after '^' at position 22: …txt | grep –v ‘^̲#’”即可实现。这里需要使用管…|^#’test.txt”,其中,单引号内的管道符号表示或者(or)。

​ 此外,grep 命令仅支持基础正则表达式,如果使用扩展正则表达式,需要使用 egrep 或 awk 命令。awk 命令在后面的小节进行讲解,这里我们直接使用 egrep 命令。egrep 命令与 grep 命令的用法基本相似。egrep 命令是一个搜索文件获得模式,使用该命令可以搜索文件中的任意字符串和符号,也可以搜索一个或多个文件的字符串,一个提示符可以是单个字符、一个字符串、一个字或一个句子。

二.常见元字符

1. +,重复零个或者多个的前一个字符
[root@localhost ~]# egrep -n 'wo+d' abc.txt
11:wood
12:wod
13:woood
14:wooood
15:woooood

2. ?,查询是否存在有前一个字符

[root@localhost ~]# egrep -n 'bes?t' abc.txt 
17:best
18:bet
3.| ,使用或者(or)的方式找出多个字符
[root@localhost ~]# egrep -n 'of|if|on' abc.txt
19:often
20:ifconfig
21:ontime
4.(),查找“组”字符串
[root@localhost ~]# egrep -n 'be(s|a)t' abc.txt
17:best
22:beat
5.()+ ,辨别多个重复的组
[root@localhost ~]# egrep -n 'A(xyz)+C' abc.txt
23:AxyzC
24:AxyzxyzC
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值