正则表达式

正则表达式

在这里插入图片描述
在这里插入图片描述

基本正则表达式元字符:字符匹配、匹配次数、位置锚定、分组及引用

字符匹配

字符说明
.匹配任意单个字符
[]匹配指定范围内的任意单个字符
[^]匹配指定范围外的任意单个字符

[[:upper:]]:所有大写字母

[[:lower:]]:所有小写字母

[[:alpha:]]:所有字母

[[:digit:]]:所有数字

[[:alnum:]]:所有的字母和数字

[[:space:]]:所有空白字符
[[:punct:]]:所有标点符号

匹配次数

字符说明
*匹配其前的字符任意次;0,1,多次
.*匹配任意长度的任意字符
?匹配其前面的字符0次或1次
\ +匹配其前面的字符一次或多次
\{m\}匹配其前的字符m次;grep“x\{1\}y”
\{m,n\}匹配其前面的字符至少m次,至多n次
\{0,n\}匹配其前面的字符至多n次
\{m,\}匹配其前面的字符至少m次

在这里插入图片描述

[root@localhost ~]# grep "x*y" 1.1

abxy

aby

xxxxxy

ya

[root@localhost ~]# grep "x\?y" /root/1.1
abxy
aby
xxxxxy
ya

[root@localhost ~]# grep "x\+y" 1.1
abxy
xxxxxy

位置锚定

字符说明
^行首锚定;用于模式的最左侧 ; grep “^root /etc/passwd”
$行尾锚定;用于模式最右侧 ; grep "root$" /etc/passwd
^$空白行
1空行或包含空白字符的行
\<词首锚定,用于单词模式的最左侧 ; grep "\<root" /etc/passwd
\>词尾锚定,用于单词模式的最右侧 ; grep "root\>" /etc/passwd
\<PATTERN>\匹配完整单词 ; grep "\<root\>" /etc/passwd

分组及引用

字符说明
\(\)将一个或多个字符捆绑在一起,当作一个整体进行处理
\(xy\)*ab命令行中括号有特殊意义所以用转义符 "\"
\1模式从左侧起,第一个左括号以及与之匹配的右括号之间的模式所匹配到的字符
\2模式从左侧起,第二个左括号以及与之匹配的右括号之间的模式所匹配到的字符
…………

在这里插入图片描述

基本正则表达式 grep 和扩展正则表达式 egrep 或 grep -E的区别 :有无转义符 “\”

grepegrep/grep -E
\ ++
\ {m\}{m}
\ {m,n\}{m,n}

  1. [:space:] ↩︎

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值