基本正则表达式

城还是这座城,人已非故人

  • QQ拼音截图未命名12
  • 基本正则表达式
    • 字符匹配:
      • 匹配任意单个字符:.
      • 匹配指定范围内的任意单个字符:[](注意匹配规则,匹配上的字符不再做匹配,括号内如果有多个单个字符或者比如[a0-9c],表示匹配a或者0-9或者c),括号内输入点号[.]就是普通字符点
      • 匹配指定范围外的任意单个字符:[^]
      • [:alnum:] 字母和数字
      • [:alpha:] 代表任何英文大小写字符,亦即 A-Z, a-z
      • [:lower:] 小写字母 [:upper:] 大写字母
      • [:blank:] 空白字符(空格和制表符)
      • [:space:] 水平和垂直的空白字符(比[:blank:]包含的范围广)
      • [:cntrl:] 不可打印的控制字符(退格、删除、警铃…)
      • [:digit:] 十进制数字 [:xdigit:]十六进制数字
      • [:graph:] 可打印的非空白字符
      • [:print:] 可打印字符
      • [:punct:] 标点符号
    •  匹配次数:用在要指定次数的字符后面,用于指定前面的字符要出现的次数
      • 匹配其前面的字符0或多次:  * 如:a*b 表示a出现任意次后紧跟b
      • 匹配任意长度的字符:   .* 表示 . 出现任意次
      • 匹配其前面的字符一次或0次:\? 需要加“”或‘’
      • 匹配其前面的字符1次或多次:\+ 前面的字符至少出现1次
      • 匹配其前面的字符m次:\{m\}
      • 匹配其前面的字符至少m次,最多n次:\{m,n\} \{0,n\}最多n次;\{m,\}至少m次
    •  位置锚定:定位出现的位置
      • 锚定行首,此元字符后面的一个或多个字符必须出现在行首:^
      • 锚定行尾,此字符前面的一个或多个字符必须出现在行尾:$
        • ^PATTERN$:用模式来匹配整行
        • ^$ 或 ^[[:space:]]*$ :空白行
      • 锚定单词首部,表示\<后的字符必须是单词的开头(单词匹配时只有字母、数字和下划线算作单词的一部分,其他符号都不是)首部出现:\<或者\b
      • 锚定词尾,其后面的任意字符必须作为单词尾部出现:\>或者\b
        • 精确匹配单词:\<root\>
        • 匹配整行,不能匹配单词了:\<.*\>
        • 例:找出/etc/passwd文件中的两位数或三位数
          • # grep “\<[0-9]\{2,3\}\>”/etc/passwd如果不锚定词首词尾会出现3个数字以上的行
    • 分组:\(\) 将一个或多个字符捆绑在一起,当作一个整体进行处理,如:\(ab\)*  表示ab看作整体,ab可以出现任意次
      • 注意:分组括号中的模式匹配到的内容会被正则表达式引擎自动记录于内部的变量中,这些变量为后向引用
      • \1:引用第一个左括号以及与之对应的右括号所包括的所有内容
      • \2:引用第2个左括号以及与之对应的右括号所包括的所有内容
      • \3:引用第3个左括号以及与之对应的右括号所包括的所有内容

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/96521

(0)
DPingDPing
上一篇 2018-04-18 20:13
下一篇 2018-04-19 13:41

相关推荐

  • 文件管理基础知识

                   文件管理 目录篇 / :根目录 bin    boot    dev    etc    home    root    run     sbin    tmp    usr   var 字符界面颜色的意义: 蓝色=目录、绿色=可执行文件、红色=压缩文件、浅蓝色=链接文件 灰色=其他文件 boot:引导文件的存放目录  bin:…

    Linux笔记 2018-04-08
  • 第二周作业

    第二周作业 一、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 pwd:  显示当前的工作目录 -P 显示真实物理路径 -L 显示链接路径(默认)   cd:  改变目录 使用绝对路径或者相对路径: cd /root/Desktop  cd Desktop/ 切换至父目录: cd .. 切换至当前用户主目录: cd 切换至…

    2018-07-06
  • 高效利用linux工作 之 学习命令行笔记(一)

    本节将先围绕“为什么学习命令行?”这个问题来展开个人使用linux的近期总结

    2018-07-21
  • Docker容器三

    Docker file镜像的制作的各种指令 ;dockerData Volume存储卷

    2018-08-03
  • Linux系统命令总结——文件管理篇

    整理了一些和文件管理有关的小命令、索引节点、链接文件、通配符,以及标准I/O的知识点,希望对各位有些许的帮助顺便也加深一下自己的记忆和理解。学如逆水行舟,不进则退。

    2018-03-30
  • shell脚本之判断httpd是否有异常

    案例 以web为例 大全讲解:如http为例 #/etc/init.d/httpd start      开启httpd #lsof –i :80 [root@centos6 ~/bin]$curl -I -s -o /dev/null -w “%{http_code}\n” http://172.16.0.1 析:-I 是响应头,响…

    Linux笔记 2018-05-20