linux_shell_正则表达式

Shell中的正则表达式可以再vim、sed、awk、grep等引用
正则表达式由元字符组成
元字符它们表达的是不同于字面本身的含义,下面来逐一进行介绍
元素符分为基本正则表达元素符和扩展正则表达元素符

基本元素符

^ 行首定位符 ^a表示以a开头的内容
$ 行尾定位符 a$ 表示以a结尾的内容
. 匹配任意的单个字符 注意只匹配一个字符

  • 匹配前导符0到多次,a* 匹配可以不匹配a和匹配a多次
    .* 任意多个字符字符
    [] 匹配指定范围内的一个字符 [Ll]ove love可以Love也可以
    [^] 匹配不再指定组内的字符 [^a-z]ove 可以理解为取反的意思
    \ 转义元字符 和 ‘’ “” \ 一样
    < 词首定位符 和^类似 不过^是行首 <是词首 每个单词的开头
    > 词尾定位符 和$类似 $是行尾 >是词尾 每个单词的尾部
    () 例:(…) 匹配稍后使用的字符的标签 这个有点难 加点例子
    下面代码在vim中
    %表示匹配整个文档 s/被替换的内容/替换后的内容/
    :% s/172.16.130.1/172.16.130.5/
    :% s/(172.16.130.)1/\15/ #用(和)把想要的字符串括起来 在替换后的内容里进行\1调用
    :% s/(172.)(16.)(130.)1/\1\2\35/
    :3,9 s/(.*)/#\1/ 加注释

x{m} 匹配x字符m次 连续几次出现x字母 这样好理解吧
x{m,} 匹配x字符m次和m次以上
x{m,n}匹配x字符m次但n次之间

扩展正则表达式元字符

  • 匹配1~n个前导字符
    ?匹配0~1个前导字符
    a|b匹配a 或者b
    ()组字符 例[root@localhost ~]# egrep “loveable|rs” 1.txt
    rs
    loveable
    lovers
    [root@localhost ~]# egrep “love(able|rs)” 1.txt
    loveable
    lovers
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值