正则表达式 && sed应用

正则表达式 && sed应用

与grep一样,sed也支持特殊元字符,来进行模式查找、替换。不同的是sed使用的正则表达式是包括在斜杠线"/"之间的模式。

如果要把正则表达式分隔符“/"改为另一个字符,比如o,只要在这个字符前加上一个反斜线,在字符后跟上正则表达式,再跟上这个字符即可。

一般使用:

(1)^:行首定位符:/^1/    匹配所有以1开头的行


(2)$:行尾定位符:/5$/   匹配所有以5结尾的行


(3).:匹配除换行符以外的单个字符:/1..3/   匹配包含1,后跟任意两个字符,再跟3的行


(4)*:匹配零个或多个前导字符:/1234*/    匹配包含123,后跟零个或多个4的行


(5)[]:匹配指定字符组内的任一字符:/t[aA]st/  匹配包含tast或tAst的行


(6)[^]:匹配不在指定字符组内的任一字符:/t[^aA]st/   匹配以t开头,但st之前的那个字符不是e或E的行


(7)\(..\):保存已匹配的字符:标记元字符之间的模式,并将其保存为标签1,之后可以使用\1来引用它。最多可以定义9个字符,从左边开始编号,最左边的是第一个。此例中,对第一行到第三行进行处理,tes被保存为标签1,如果发现tes,则替换为tesaaaaaa


(8)&:保存查找串以便在替换串中引用:s/test/*&*/g 符号&代表查找串。test将被替换为*test*


(9)\<:词首定位符:/\<test/ 匹配包含以test开头的单词的行


(10)\>:词尾定位符:/es\>/ 匹配包含以es结尾的单词的行


(11)x\{m\}:连续m个x:/a\{5\}/  匹配包含连续5个a的行


(12)x\{m,\}:至少m个x:/a\{5,\}/  匹配包含至少连续5个a的行


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值