• grep 简单笔记


    文本处理工具之grep、egrep和fgrep
    grep:(global search regular expression(RE)and print out the line)

    文本搜索工具,根据用户指定的文本模式对目标文件进行逐行搜索,并显示匹配的行

    格式:grep [options] 'PATTERF' file,默认只支持基本正则表达式,要匹配额外功能的字符用-E
    选项:
    --color 指定颜色
    -v:反向匹配,显示不能被模式匹配到的行
    -o:仅匹配被模式匹配到的字串,而非整行
    -i:不区分大小写,ignore-case
    -E:支持扩展
    -A #:还显示模式下面的一行
    -B #:还显示模式上面的一行
    -C #:前后各显示一行


    正则表达式:是一类字符所书写出的模式(pattern)
    元字符:类似统配符,不表示字符本身的意义,用于额外功能性的描述

    基本正则表达式和扩展正则表达式
    基本正则表达式的元字符:
    .:任意单个字符
    []:指定范围内的任意单个字符
    [0-9],[[:digit:]]
    [a-z],[[:lower:]]
    [A-Z],[[:upper:]]
    所有的字母:[[:alpha:]]
    字母+数字:[[:alnum:]]
    空格:[[:space:]]
    标点符号:[[:putct:]]
    [^]: 指定范围外的任意单个字符
    次数匹配:用来指定匹配其前面的字符的次数
    *:任意次
    例子:x*y xxy xy y 都能匹配
    .*:匹配任意长度的任意字符
    ?:前面字符出现0次或者1次的

    grep --color 'x{2}y' b {m}:匹配m次
    xxy
    xxy

    grep --color 'x{2,3}y' b {m,n}:至少m次,至多n次
    xxy
    xxxy

    grep --color 'x{2,}y' b {m,}:至少m次
    xxy
    xxxxxxxxxxxxxxxxxxxy

    grep --color 'x{0,2}y' b {0,n}:至多n次
    xy
    xxy
    xxy

    做变量换算需要使用”“
    贪婪模式:尽可能的长的去匹配字符:

    位置锚定:用于指定字符出现的位置
    ^:锚定行首
    ^Char
    $:锚定行尾
    grepchar$
    ^$:空白行
    单词的位置锚定
    <char :锚定词首,
    char> : 锚定词尾,char
    分组:
    ()
    (ab)*xy (a.b)xy1 = a6bxya6b
    栗子:
    cat c
    He like his lover
    She love her liker
    He love his lover
    She like her liker

    grep '(l..e).*1' c
    He love his lover
    She like her liker


    引用:
    1:后向引用,引用前面的第一个左括号以及与之对应的右括号中的模式匹配到的内容,意思是说前面出现一次,在1这也要出现一次

  • 相关阅读:
    单点登陆
    【springmvc学习】常用注解总结
    Excel里函数中的万金油,你确定不要点进来看看?
    Maven3在Eclipse上安装插件
    VSCode 云同步扩展设置 Settings Sync 插件
    Ubuntu 18.04 root 使用ssh密钥远程登陆
    [Asp.net] C# 操作Excel的几种方式 优缺点比较
    开源框架Autofac使用入门
    C# .net Ueditor实现图片上传到阿里云OSS 对象存储
    [python]TypeError: string indices must be integers解决方法
  • 原文地址:https://www.cnblogs.com/iteemo/p/4892509.html
Copyright © 2020-2023  润新知