Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3285221
  • 博文数量: 346
  • 博客积分: 10189
  • 博客等级: 上将
  • 技术积分: 3125
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-05 19:46
文章分类

全部博文(346)

文章存档

2013年(35)

2011年(35)

2010年(76)

2009年(48)

2008年(152)

分类:

2008-09-04 15:09:40

定义:当从一个文件命令输出中抽取或过滤文本时,可以使用正则表达式(RE),正则表达式是一些特殊或不很特殊的字符串模式的集合。例如,在一个文本中抽取一个词,它的头两个字符是大写,后面紧跟四个数字,不使用正则表达式,在shell中将不能实现。

                    基本元字符集及其含义
    ^        只匹配行首
    $        只匹配行尾
    *        一个单字符后紧跟*,匹配0个或多个此单字符
    []       匹配[]内字符,可以是单字或字符序列,使用-表示范围,比如[1-255]
    \        转义字符,用于屏蔽一个元字符的特殊含义
    .        匹配任意单字符
    pattern\{n\}      用来匹配前面pattern出现次数,n为次数
    pattern\{n,\}m    含义同上,但次数最少为n
    pattern\{n,m\}    含义同上,但pattern出现的次数在n,m之间

.匹配任意单字符:   “.”允许匹配ASCII集中任意字符,或为字母,或为数字
                  例   ls -l ...x..x..x

^在行首以^匹配字符串或字符序列:    例  ls -l |grep ^d    列出目录

$在行尾以$匹配字符串或字符:  ^$匹配空行   ^.$只包含一个字符的行

使用\{\}匹配模式结果出现的次数:
    A\{2\}B        匹配结果为AAB
    A\{2,\}B       匹配A至少4次,比如AAAAB,AAAAAB,AAAAAAAAAAB等
    A\{2,4\}B      匹配结果为A出现2-4次,AAB,AAAB,AAAAB
    [0-9]\{4\}xx[0-9]\{4\}    前4个字符是数字,接下来是xx,最后4个也是数字

阅读(1196) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~