正则表达式(Linux 下搭配 grep 使用)

目录

1.基本正则表达式

2.扩展正则表达式

3.实操之grep筛选

3.1基本正则表达式

3.2扩展正则表达式


1.基本正则表达式

^                用于最左端,如^"abc",匹配以abc开头的行

$                用于最右端,如"abc$",匹配以abc结尾的行

^$               表示空行

.                  表示匹配任意一个字符

\                   转义字符,如"\.",表示字符'.'

*                   出现0次或1次以上,"a*"表示a出现0次或1次以上

.*                   匹配任意字符

^.*                 任意字符开头

.*$                 任意字符结尾

[abc]              匹配括号中任意一个字符,也可以写成[a-c]

[^abc]             匹配除了abc以外的字符     


2.扩展正则表达式

+                匹配前一个字符1次或多次

[abc]+        匹配abc 1次或多次

?                匹配前一个字符0次或1次

|                 或者的意思

()                分组

a{n,m}        匹配a最少n次,最多m次

a{n,}           匹配a最少n次

a{n}            匹配a n次

a{,m}        匹配a最多m次


3.实操之grep筛选

grep参数如下

 测试文件内容为:

passwd.txt文件:(配置文件扒下来)

cat /etc/passwd > passwd.txt

3.1基本正则表达式

        (1)在grep.txt中查找以'i'开头的行

        (2)在passwd.txt中查找有登陆权限(即以"/bin/bash"结尾的行)

        (3)在grep.txt中查找到除空行和注释以外的行

        (4)在grep.txt中查找以'.'结尾的行并排除空行

        (5)在grep.txt中查找以任意一个字符加上'a'的所有行

        (6)在grep.txt中查找含有大写字母的所有行


3.2扩展正则表达式

grep 加上 -E 选项

(1)grep -E -n "go?d" grep.txt 

        (2)当前目录下查找含有'a'或者'e'的txt文件

        (3)样例文件:

 这里的'\1'表示前面括号中的内容

        

  • 14
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不会敲代码的运气选手^

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值