8.grep命令与正则表达式

Linux上文本处理三剑客:

  grep:文本过滤工具(模式:pattern)工具;

  sed:stream editor,流编辑器;文本编辑工具;

  awk:Linux上的实现为gawk,文本报告生成器(格式化文本);

 

  grep:grep [OPTIONS] PATTERN [FILE...]

     grep [OPTIONS] [-e PATTERN | -f FILE...]

    模式:由正则表达式的元字符及文本字符多编写出的过滤条件;

    OPTIONS:

      --color=auto:对匹配到的文本着色后高亮显示

      -l:忽略字符的大小写

      -o:仅显示匹配到的字符串本身

      -v:显示不能被模式匹配到的行

      -E:支持使用扩展的正则表达式元字符

  

基本正则表达式元字符:

  字符匹配:

    . :匹配任意单个字符

    []:匹配指定范围内的任意单个字符

    [^]:匹配指定范围外的任意单个字符

  匹配次数:用在要指定出现的次数的字符的后面,用于限制其前面字符出现的次数;

    *:任意次,0,1或多次

    ?:0次或1次,其前的字符可有可无的

    +:其前字符至少1次

    {m}:其前的字符m次

    {m,n}:至少m次,至多n次

  位置锚定:

    ^:行首锚定

    $:行尾锚定

    \<,\b:词首锚定

    \>,\b:词尾锚定

  分组及引用:

    0:分组;括号内的模式匹配到的字符会被记录于正则表达式引擎的内部变量;

    后向引用:\1,\2,.....

  

posted @ 2021-09-08 14:33  -wei  阅读(63)  评论(0)    收藏  举报