正则表达式

 

QQ20180415-185253@2xQQ20180415-185310@2x

  • 正则表达式:REGular EXPression
    字符匹配:
    . 匹配一个随机字符
    \[^.]:匹配除了点以外任意的字符
    [] 匹配指定范围内的任意单个字符
    [^] 匹配指定范围外的任意单个字符
    [:alnum:] 字母和数字
    [:alpha:] 代表任何英文大小写字符,亦即 A-Z, a-z
    [:blank:] 空白字符(空格和制表符)
    [:space:] 水平和垂直的空白字符(比[:blank:]包含的范围广)
    [:cntrl:] 不可打印的控制字符(退格、删除、警铃…)
    [:digit:] 十六进制数字
    [:graph:] 可打印的非空白字符
    [:print:] 可打印字符
    [:punct:] 标点符号
    次数匹配:
    *:匹配前面出现的字符n次
    .*:表示任意长度的任意字符串
    \?:匹配前面出现的字符最多1次
    \+:匹配前面出现的字符最少1次
    \{n\}:匹配前面出现的字符n次
    \{m,n\}:匹配前面出现的字符最少m次最多不超过n次
    \{,n\}:匹配前面出现的字符最多n次
    \{n,\}:匹配前面出现的字符最少n次
    位置锚定:
    ^:匹配行首
    $:匹配行尾
    ^$:空行
    ^[[:space:]]$:空白行
    \<\>:锚定一个单词
    \<:锚定词首
    \>:锚定词尾
    分组:
    echo AAAxxxxBBAAABBB|grep “\(A\)\{3\}.*\(B\)\+\1.*\2”
    示例:嵌套分组 \(string1\+\(string2\)*\)
    \1 :string1\+\(string2\)*
    \2 :string2
    后向引用:引用前面的分组括号中的模式所匹配字符,而非模式本身
    \1:对分组的内容进行引用,第一个括号就是\1,第二个括号为\2,依此类推
    或者:\|
    示例:a\|b:a或b C\|cat:C或cat \(C\|c)at:Cat或cat
  • 扩展正则表达式:Extended REGular EXPression
    字符匹配:
    .:任意单个字符
    []:指定范围的字符
    [^]:不在指定范围的字符
    次数匹配:
    *:匹配前面字符任意次
    ?:0次或1次
    +:1次或多次
    {m}:匹配m次
    {m,n}:至少m,至多n次
    位置锚定
    ^:行首
    $:行尾
    \<,\b:语首
    \>,\b:语尾
    分组:
    ()
    反向引用:
    \1,\2, …
    或者:
    a|b:a或b
    C|cat:C或cat
    (C|c)at:Cat或cat

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

(0)
上一篇 2018-03-16 21:20
下一篇 2018-03-17 09:19

相关推荐

  • 磁盘管理知识

    磁盘管理知识 1.tune2fs(调整文件系统参数)      [root@centos6 ~]#tune2fs -i 3 /dev/sdb (interval 间隔,即3天检查一次)      tune2fs 1.41.12 (17-May-2010)      Setting interval between checks to 259200 secon…

    Linux笔记 2018-04-24
  • 磁盘分区之MSDOS与GPT的区别

    只介绍两者的区别,没有操作方法,做记录学习用

    2018-07-19
  • 进程管理工具及计划任务

    进程管理工具 kill命令: 向进程发送控制信号,以实现对进程管理,每个信号对应一个数字,信号名称以SIG开头 (可省略),不区分大小写 显示当前系统可用信号: kill –l,trap -l 常用信号:man 7 signal 1) SIGHUP: 无须关闭进程而让其重读配置文件 2) SIGINT: 中止正在运行的进程;相当于Ctrl+c 3) SIGQ…

    Linux笔记 2018-05-06
  • Linux菜鸟,放弃了曾经的那份“鸡肋”!!!

    有志者、事竟成,破釜沉舟,百二秦关终属楚;
    苦心人、天不负,卧薪尝胆,三千越甲可吞吴。

    2018-07-19
  • linux中cat、more、less命令区别详解

    众所周知linux中命令cat、more、less均可用来查看文件内容,主要区别有:
    cat是一次性显示整个文件的内容,还可以将多个文件连接起来显示,它常与重定向符号配合使用,适用于文件内容少的情况;
    more和less一般用于显示文件内容超过一屏的内容,并且提供翻页的功能。more比cat强大,提供分页显示的功能,less比more更强大,提供翻页,跳转,查找等命令。而且more和less都支持:用空格显示下一页,按键b显示上一页。下面详细介绍这3个命令。

    2018-04-15
  • 课后实操

    1.怎么查看设备UUID? [root@centos6 ~]#blkid /dev/sda1: UUID=”625dc9a7-69cd-478f-892c-0d4a664b72fe” TYPE=”ext4″ /dev/sda2: UUID=”070d3bc7-773e-4d27-bf0e-81221…

    Linux笔记 2018-04-23