Linux正则表达式总结

一、正则表达式概论

1)何为正则表达式:

简单的说,Linux中的正则表达式就是处理字符的方法,可以让用户轻松地完成查找、删除、插入特定字符串的处理过程。

2)正则表达式的使用范围:

只要程序支持,正则表达式就能使用。如,vi、grep、awk、sed等程序。

二、使用正则表达式

1)基本正则表达式

其实挺简单的,主要是要去记住。
^word与word$分别指行首及行尾查找相应的word;
e.e指两个e中间一定有任意的一个字符;
ess*指所找的对象重复前一个字符,其中前一个字符可以为0个;
[abcde]指所找的对象一定含有abcde中一个字符;
[^abcd]指中间一定不存在abcd中任何一格字符;
{m,n}意指存在m-n个前一个字符,n可以不写意指n以上个字符;

2)扩展正则表达式

+指一个或一个以上前一个字符;
?指零个或一个前一个字符;
|用或的方式找出数个字符串;
()是上一个的升级版,可以在括号里把有差异的字符列出;
()+查询括号内重复字符;

三、正则表达式相关程序

1)grep

这个很常用了,直接莽;

2)sed

具体操作到时直接查文档吧。
需要记忆的是:
格式一般是sed -选项 ‘行数范围+操作’
一般操作为:
a在目的行的下一行出现
c替换
d删除
i插入
p打印
s替换
安静模式 -n选项的合理使用能较好地处理文档

3)printf

转义字符跟C是一样的,需要注意的是C中的打印字符用括号与双引号括住而这里的用的是单引号括住

4)awk

sed更多的是进行行处理,而这个更多的是进行字段处理。这里的字段是指以空格或者[tab]键进行分割的字符串或者数据。
一般处理格式为awk ‘条件 {操作}…’
条件使用变量如下:
NF 指字段数;
NR 指行数
FS 指分隔字符,默认为空格

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值