正则表达式全解析
1. 正则表达式基础
正则表达式(regexp)是一种描述字符串集合的方式。在 awk 编程中,正则表达式是非常基础的部分。用斜杠( / )括起来的正则表达式是一种 awk 模式,它能匹配文本属于该集合的每个输入记录。最简单的正则表达式是字母、数字或它们的组合序列,这样的正则表达式能匹配包含该序列的任何字符串。例如,正则表达式 foo 能匹配包含 foo 的任何字符串,模式 /foo/ 能匹配记录中任意位置包含相邻三个字符 foo 的任何输入记录。
2. 正则表达式的使用方法
- 作为模式使用 :将正则表达式用斜杠括起来,然后将其与每条记录的整个文本进行测试。通常,只要匹配文本的一部分就算成功。例如,下面的命令会打印出记录中任意位置出现字符串
li的每条记录的第二个字段:
$ awk '/li/ { print $2 }' mail-list
555-5553
555-0542
555-6699
555-3430
- 在匹配表达式中使用 :正则表达式也可用于匹配表达式,允许指定要匹配的字符串,而不必是当前整个输入记录。
~和!~这两个运算符用于执行正则表达式比较。使用这些运算符的表达式可以用作
超级会员免费看
订阅专栏 解锁全文
31万+

被折叠的 条评论
为什么被折叠?



