基本正则表达式

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

  • 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

相关推荐

  • linux入门命令

    bc:计算器 mainframe 缓存查看:lscpu磁盘和内存性能测试命令: dd Xmanager (xshell) 安装:用户名: byg公司: microsoft注册码: 使用工具生成 命令库调用: # ldd /bin/ls系统库跟踪,调用库详细信息 # strace lslibrary 库跟踪 # ltrace ls 二进制文件查看: # hex…

    Linux笔记 2018-07-21
  • 标准I/O

    标准输入,标准输出,标准错误

    2018-04-14
  • 06葵花宝典之linux网络、进程管理和shell循环语句

    06葵花宝典之linux网络、进程管理和shell循环语句 作为服务器,其输入输出功能在大多数时候都是通过网络提供的,网络功能对于服务器而言是至关重要的。 一、OSI七层模型和TCP/IP四层模型 1、OSI七层模型 OSI七层模型是参考ISO(International Standard Organization国际标准化组织)所指定的一个用于通信系统间互…

    2018-04-15
  • 虚拟机系统

    系统安装

    2018-04-01
  • Linux-vim

    vim简介 vi: Visual Interface,文本编辑器 文本:ASCII, Unicode 文本编辑种类: 行编辑器: sed 全屏编辑器:nano, vi vim – Vi Improved 其他编辑器: gedit 一个简单的图形编辑器 gvim 一个Vim编辑器的图形版本   打开文件 # vim [OPTION]&#8…

    2018-04-08
  • MySQL之主从复制相关实验

    本节索引 实验一:搭建主从复制 实验二:为已存放大量数据的在用服务器搭建从服务器 实验三:级联复制 实验四:提升一个从服务器为主服务器 实验五:主主复制 实验六:半同步复制 实验七:实现主从SSL加密复制     实验一:搭建主从复制 前期准备: 两台虚拟机 主服务器:     CentOS7.4  192.168.30.10      …

    2018-06-18