shell脚本编程4:正则表达式

本文介绍了正则表达式的概念及其在多种编程环境中的应用,包括基本正则与扩展正则的区别及用法,例如如何使用特殊符号进行字符串匹配等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

正则表达式:
(使用一些特殊符号来表达)正则在计算机中为通用语言
[java php python shell grep vim sed awk ] [office ps AE...]都使用
基本正则兼容性强书写麻烦,几乎所有的软件都支持基本正则;扩展正则兼容性差书写简单不是所有软件都支持扩展正则;(grep不支持扩展则正则但是egrep支持)

基本正则

^ 开始

$ 结尾

[ ] 集合中任一单个字符
[abcdefg]=[a-g] [abcde123456]=[a-e1-6] 
[abcdem1234568]=[a-e1-6m8]
grep “[abc]” 1.txt
This is a pig
This is abc (两个都能匹配出来)

[^] 对集合取反

. 代表任意单个字符

  • 匹配前一个字符出现了n次
    grep “abc” a.txt (匹配的是ab abc abcc abccc abcccc ......)
    .
     匹配所有

{n,m}匹配前一个字符出现n-m次
Grep “abc{3,5}” a.txt (匹配的是abccc abcccc abcccccc abccccccc ......)
{n,}匹配前一字符出现了n次或更多
{n}匹配前一字符出现了n次
Grep -i 不区分大小写 -v取反 -n显示行号 -c统计过滤出来的行数

扩展正则(优化基本、添加新的):

{n,m} 匹配字符出现n-m次({n,} {n}) 与{n,m}作用相同

? 匹配0或1次

  • 1或大于一次 (? + 的作用与*的作用相同)

() 表示一个整体

| 表示或者 (test | taste)

\b 单词边界

() 保留<相当于赋值了一份>

()










本文转自 英强云计算 51CTO博客,原文链接:http://blog.51cto.com/13404755/2050753,如需转载请自行联系原作者
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值