• 通配符与正则表达式


    通配符和正则表达式

    2017-09-30-11:22:31个人原创,允许转载,请注明出处,作者,否则追究法律责任。

    通配符适用的地方:shell命令行或者shell脚本中

    正则表达式适用的地方:字符串处理时,一般有一般正则和Perl正则。

    1,通配符

     ﹡ 匹配所有:匹配0个到多个的任意的字符。

    ?匹配任意单个字符

    [ ] 匹配括号内的1个字符

    [ ! ] 匹配 不在中括号内的一个字符 (和正则中的 [ ^ ]作用相似,都是反向选择)

    当要把以上的* ,?,[ ]当成参数或者字符串处理时,就要限制shell不能当成通配符。这时的处理方法是:加单引号或者用(反斜杠转义)

     2,正则表达式

    字符

    作用

    *

    前一个字符匹配0次或任意多次

    .

    匹配除了换行符以外任意一个字符

    ^

    匹配行首。例如:^helloworld会匹配以helloworld开头的行

    $

    匹配行尾。例如:helloworld$会匹配以helloworld结尾的行

    [ ]

    匹配中括号里的任意指定的一个字符,但只匹配一个字符

    [^]

    匹配除中括号以外的任意一个字符

    转义符,取消特殊含义

    {n}

    表示其前面的字符恰好出现n

    {n,}

    表示其前面的字符出现不小于n

    {n,m}

    表示其前面的字符至少出现n次,最多出现m

    字符匹配

    .:匹配任意单个字符

    *:匹配其前面一个字符出现任意次

    ?:匹配其前面的字符1次或0

    +:匹配其前面一个字符出现至少一次(在扩展正则表达式中)

       

    位置匹配

    ^:锚定行首

    $:锚定行尾

    <:锚定词首,其后面的任意字符必须作为单词首部出现

    >:锚定词尾,其前面的任意字符必须作为单词尾部出现

    B:非单词的开头或结尾

    ^$:空白行

       

    分组匹配用()

    (ac)* 匹配ac这个分组出现任意次

    1:引用第一个左括号以及与之对应的右括号所包括的所有内容,同理还有2,3

  • 相关阅读:
    每周工作进度及工作量统计
    debug阶段工作期站立会议2(进度推进)
    new NABCD
    事后诸葛亮会议 (尸体解剖)
    debug阶段工作期站立会议1
    用户使用报告
    Scrum会议10(Beta版本) 补交
    历年学生作品点评
    关于词频统计的效能测试
    敏捷开发之Scrum站立会议
  • 原文地址:https://www.cnblogs.com/kaishirenshi/p/7615053.html
Copyright © 2020-2023  润新知