linux shell正则匹配时间格式,linux shell编程学习笔记(9)正则表达式

1、什么是正则表达式

用一串符号描述有共同属性的数据

一串符号:元符号

——正则表达式通常被用来检索和/或替换那些符合某个模式的文本内容。许多程序设计语言都支持利用正则表达式进行字符串操作。对于系统管理员来讲,正则表达式贯穿在我们的日常运维工作中,无论是查找某个文档,抑或查询某个日志文件分析其内容,都会用到正则表达式。

——其实正则表达式,只是一种思想,一种表示方法。只要我们使用的工具支持表示这种思想那么这个工具就可以处理正则表达式的字符串。常用的工具有grep, sed, awk 等

2、正则表达式的语法格式

#grep [选项]  ‘正则表达式’   文件列表      -

#前置命令  | grep [选项]  ‘正则表达式’

3、正则表达式处理顺序:

·以行为处理单位

·对数据按先后顺序逐行处理

·处理完当前行后,自动处理下一行,直到末行为止

·默认输出与表达式匹配的行

4、正则表达式怎么写

——正则表达式由元字符组成

4.1、基本元字符

(1)^

——匹配行首

格式:^匹配字符

[root@moni01 shell]# grep ^root /etc/passwd

root:x:0:0:root:/root:/bin/bash

[root@moni01 shell]#

(2)$

——匹配行尾

格式:匹配字符$

[root@moni01 shell]# grep /sbin/nologin$ /etc/passwd

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin

adm:x:3:4:adm:/var/adm:/sbin/nologin

lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

(3).

——匹配任意单个字符。换行符\n 除外

796573870ee39b64ec4e516046822502.png

(4)[]

——匹配范围内的任意一个字符

——匹配优先

2b92d6c0d5173db9260ab831155b33fc.png

(5){}

——限制正则表达式的匹配次数

1){n} 匹配n次

2){n,m} 匹配n-m次

3){n,} 匹配至少n次

匹配空格

e252d0e9546c05d3c0633933a3ee77a2.png

(6)+

——至少匹配一次(一次或多次)

5979c764e40753d5a4285e1da66f3dca.png

(7)?

——最多匹配一次(0次或1次)

32901e381f08b9f24233c531442e9dd2.png

(9)*

——匹配任意次数。(零次到多次)

4481fe4a19ffc6120581b95131a03168.png

(10)单词边界匹配

1)匹配整个单词/单词边界

如: \broot\b

\[root@moni01 tmp]# egrep '\broot\b' /etc/passwd

root:x:0:0:root:/root:/bin/bash

operator:x:11:0:operator:/root:/sbin/nologin

[root@moni01 tmp]#

2)匹配单词的开头

如:\broo

\

3)匹配单词的结束

如:oot\b

Oot\>

c50b1ca7a6ac068232b61a7b0ac95f23.png

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值