Linux系统下如何使用AWK正则表达式
1个回答
展开全部
awk 正则有几种使用方法
直接当做条件 awk '/正则/{执行语句}' file 表示只对能够匹配正则的行执行后面的语句, !/正则/ 则是不匹配时执行
对某个列进行判断 awk '$1 ~ /正则/ {执行语句}' file 表示第一列如果匹配正则,对该行进行处理。也可以用 ~! 或 !~ 表示不匹配时进行处理。 第一种情况相当于 $0 ~ /正则/
分隔符使用正则, 在awk的-F参数后可以直接使用正则表达式 表示能够匹配的都当做分隔符;awk中设置 其他分隔符 如FS、RS等也可以使用正则
字符串函数中使用正则。 如split(s,a,fs) 在fs上将s分成序列a,其中fs就可以用正则;几个替换函数gensub(a,b,c[,d])等也可以包含正则表达式,例如:
gensub(/123/,"x",1,$1)替换$1中 第一次匹配到的123为字符x,返回值为$1替换后的内容,且$1的内容并没有改变
等等
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询