Linux学习笔记(8)——正则表达式与文件格式化处理

正则表达式与文件格式化处理

一、什么是正则表达式?

正则表达式是处理字符串的方法,它以行为单位来进行字符串的处理操作,正则表达式通过一些特殊符号的辅助,可以让用户轻易地完成【查找、删除、替换】某特定字符串的处理过程。

正则表达式基本上是一种【表示法】,只要程序支持这种表示法,那么该程序就可以用来作为正则表达式的字符串处理之用。(常见的grep、sed、vim等)

二、基础正则表达式

2.1 语系对正则表达式的影响

不同的编码顺序可能会导致不同的选取结果。

2.2 grep的一些高级选项

grep [-A] [-B] [--color=auto] '查找字符' filename
选项与参数:
-A: 后面可加数字,为after的意思,除了列出该行外,后续n行也列出来
-B: 后面可加数字,为before的意思,除了列出该行外,前面n行也列出来
--color=auto: 可将正确的那个选取数据列出颜色

grep在数据中查询一个字符串时,是以【整行】为单位来进行数据的选取。

2.3 基础正则表达式练习

一些grep的使用实例,有需要再学习补充

2.4 基础正则表达式字符串集合(characters)

  • ^word:待查找的字符串(word)在行首
  • word$:待查找的字符串(word)在行尾
  • .:代表【一定有一个任意字符】的字符
  • \:转义符,将特殊符号的特殊意义去除
  • *:重复零个到无穷多个的前一个RE字符
  • [list]:字符集合的RE字符,里面列出想要选取的字符
  • [n1-n2]:字符集合的RE字符,里面列出想要选取的字符范围
  • [^list]:字符集合的RE字符,里面列出不要的字符串或范围
  • \{n,m\}:连续n到m个的前一个RE字符

2.5 sed工具

三、扩展增则表达式

四、文件的格式化于相关处理

4.1 格式化打印:printf

printf '打印格式' 实际内容
选项参数:
    \a  :警告声音输出
    \b  :退格键
    \f  :清除屏幕
    \n  :输出新的一行
    \r  :回车
    \t  :水平Tab
    \v  :垂直Tab
    \xNN:NN为两位数的数字,可以转换数字成为字符
C语言程序内常见的变量格式:
    %ns     多少个字符
    %ni     多少整数位数
    %N.nf   N个位数,小数点有n位

4.2 awk:好用的数据处理工具

awk可以使用【字段】为依据,进行数据的重新整理或输出

4.3 文件比对工具

  • diff、cmp
    用于文件的比对,diff主要用在纯文本文件方面的新旧版本比对
  • patch
    将旧版数据更新到新版(主要亦由diff建立patch的补丁源文件)

4.4 文件打印设置:pr

posted @ 2022-11-09 08:46  S!no  阅读(56)  评论(0编辑  收藏  举报