zoukankan      html  css  js  c++  java
  • 3.4 小结

        如需从输入的数据文件中取出特定的文本行,主要的工具为 grep 程序。POSIX 采用三种不同 grep 变体:grep、egrep 与 fgrep 的功能,整合为单个版本,通过不同的选项,分别提供这三种行为模式。
     
        虽然可以直接查找字符串常数,但是正则表达式能提供一个功能更强大的方式,描述你要找的文本。大部分的字符在匹配时,表示的是自己本身,但又部分其他字符扮演的是 meta 字符的角色,也就是指定操作,例如“匹配0至多个的......”、“匹配正好10个的......”等。
     
        POSIX 的正则表达式有两种:基本正则表达式(BRE)以及扩展正则表达式(ERE)。哪个程序使用哪种正则表达式风格,是根据长时间的实际经验,由 POSIX 制定规格,简化到只剩两种正则表达式的风格。通常,ERE 比 BRE 功能更强大,不过不见得任何情况下都是这样。
     
        正则表达式对于程序执行时的 locale 环境相当敏感;方括号表达式里的范围应避免使用,改用字符集,例如[[:alnum:]]较佳。另外,许多 GNU 程序都有额外的 meta 字符。
     
        sed 是处理简单字符串替换(substitution)的主要工具。大部分的 Shell 脚本在使用 sed 时几乎都使用来做替换的操作。
     
        “从最左边开始,扩展至最长(longest leftmost)”,这个法则描述了匹配的文本在何处匹配以及匹配扩展到多长。在使用 sed、awk 或其他交互式文本编辑程序时,这个法则相当重要。除此之外,一行与一个字符串之间的差异也是核心观念。在某些程序语言里,单个字符串可能包含数行,那种情况,^ 与 $ 指的分别是字符串的开头与结尾。
     
        很多时候,在操作上可以将文本文件里每一行视为一条单个记录,而在行内的数据则包括字段。字段可以被空白或是特殊定界符分隔,且有许多不同的 UNIX 工具可处理这两种数据。cut 命令用以剪下选定的字符范围或字段,join 则是用来集合记录中具有共同键值的字段的文件。
     
        awk 多半用于简单的“但命令行程序”,当你想要只显示选定的字段,或是重新安排行内的字段顺序时,就是 awk 派上用场的时候了。由于它是编程语言,即使是在简短的程序里,它也能发挥其强大的功能、灵活性与控制能力。
  • 相关阅读:
    eas之动态刷新Table
    eas之导入导出
    eas之事件
    eas之获得任何一个KDTable的选中行
    eas之创建一个UI界面并对其操作
    eas之style接口
    eas之指定虚模式
    eas之数据融合
    eas之kdtable格式化
    eas之视图冻结与解冻
  • 原文地址:https://www.cnblogs.com/avention/p/10307405.html
Copyright © 2011-2022 走看看