跳到主要内容

09、AWK 正则表达式运算符

AWK支持正则表达式,而且为正则表达式提供了两个运算符用于计算模式是否匹配

匹配运算符 ~

AWK使用一个 波浪线 ( ~ ) 作为正则表达式匹配运算。

匹配运算符用于在给定的字符串中查找要匹配的字符串,如果找到则返回 true 否则返回 false。

例如下面的 awk 命令,在每一行中查找字符串 四 ,如果找到则输出当前行

[www.ddkk.com]$ awk '$0 ~ "四"' employee.txt

运行上面的 awk 命令,输出结果如下

2)  李四  人力部  22

不匹配运算符 !~

AWK使用一个 感叹号波浪线 ( ~ ) 作为正则表达式不匹配运算符 ( !~ ) 。

不匹配运算符用于在给定的字符串中查找要匹配的字符串,如果没有找到则返回 true 否则返回 false。

例如下面的 awk 命令,在每一行中查找字符串 四 ,如果没有发现则输出当前行

[www.ddkk.com]$ awk '$0 !~ "四"' employee.txt

运行上面的 awk 命令,输出结果如下

1)  张三  技术部  23
3)  王五  行政部  23
4)  赵六  技术部  24
5)  朱七  客服部  23