正则表达式

来源:互联网 发布:无法登录mysql服务器 编辑:程序博客网 时间:2024/06/05 15:59

定义:当从一个文件命令输出中抽取或过滤文本时,可以使用正则表达式(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个也是数字

0 0
原创粉丝点击