正则表达式

 

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)
what?what?
上一篇 2018-03-16 21:20
下一篇 2018-03-17 09:19

相关推荐

  • 正则表达式浅解

    正则表达式:由一类特殊字符及文本字符所编写的模式,其中有些字符(元字符)不表示字符字面意义,而表示控制或通配的功能。 扩展正则表达式元字符: 字符匹配:. 匹配任意单个字符[] 匹配指定范围内的任意单个字符[^] 匹配指定范围外的任意单个字符[:alnum:] 字母和数字[:alpha:] 代表任何英文大小写字符,亦即 A-Z, a-z[:lower:] 小…

    2018-04-07
  • 相信过程-马哥教育

    IT工程师工作和学习都是比较枯燥的,过于目标化忽略了过程本身并不适合我,如果我来这里能使我全心全意投入到一段学习当中,我觉得来这里目标就达到了。其他的事情自然会水到渠成。 大家共勉!

    2018-07-21
  • Linux-用户、组和权限

    本章内容 解释Linux的安全模型 解释用户帐号和组群帐号的目的 用户和组管理命令 理解并设置文件权限 默认权限 特殊权限 ACL   安全3A 资源分派: Authentication:认证 Authorization:授权 Accouting|Audition:审计   用户user 令牌token,identity Linux用户:…

    2018-04-05
  • 第一周作业

    1、描述计算机的组成及其功能。 计算机由运算器,控制器,存储器,输入设备和输出设备五大部分组成。 (1)运算器的功能是用于完成算术运算、逻辑运算。负责计算机执行的所有数学与逻辑功能。 (2)控制器的功能是主要负责对程序所执行的指令进行分析,并协调计算机各部件进行工作计算机的所有 其他部件。 (3)存储器的功能是用于储存信息的设备,通常是将信息数字化后再利用电…

    Linux笔记 2018-05-11
  • 马哥Linux云计算面授班第1天课堂笔记

    开班典礼,规章制度,自我介绍,写博客

    2018-03-26
  • 命令行展开案例

    [Azuth@azuth ~]$ mkdir /home/Azuth/tmp/{a,b}_{c,d}[Azuth@azuth ~]$ ll /home/Azuth/tmp/total 0drwxrwxr-x. 2 Azuth Azuth 6 May 20 20:35 a_cdrwxrwxr-x. 2 Azuth Azuth 6 May 20 20:35 a_…

    Linux笔记 2018-05-20