awk 字符串处理函数

Posted 陈浩然MC

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了awk 字符串处理函数相关的知识,希望对你有一定的参考价值。

awk提供了许多强大的字符串函数,见下表:
awk内置字符串函数
gsub(r,s)    在整个$0中用s替代r
gsub(r,s,t)    在整个t中用s替代r
index(s,t)    返回s中字符串t的第一位置
length(s)    返回s长度
match(s,r)    测试s是否包含匹配r的字符串
split(s,a,fs)    在fs上将s分成序列a
sprint(fmt,exp)    返回经fmt格式化后的exp
sub(r,s)    用$0中最左边最长的子串代替s
substr(s,p)    返回字符串s中从p开始的后缀部分
substr(s,p,n)    返回字符串s中从p开始长度为n的后缀部分 详细说明一下各个函数的使用方法。


gensub(a,b,c[,d])全局替换,匹配正则a, 用b替换,c为指定替换目标是第几次匹配,d为指定替换目标是哪个域如$1,$2,若无d指$0,返回值为target替换后内容(未替换还是返回 target原内容),与sub、gsub不同的是,target内容替换后不改变。
gensub(/123/,"x",1,$1)替换$1中 第一次匹配到的123为字符x,返回值为$1替换后的内容,且$1的内容并没有改变
gensub(/a(.*)b/,"\\\\1",1) 返回值为匹配正则第1对()内的内容
gensub(/a(.*)b(.*)c/,"\\\\2",1) 返回值为匹配正则第2对()内的内容

 

原文:http://www.cnblogs.com/anny-1980/articles/3616086.html

以上是关于awk 字符串处理函数的主要内容,如果未能解决你的问题,请参考以下文章

Linux 之 awk处理字符串

awk的常用标变量和数值运算符

awk 的一些用法

awk 命令

文本处理 awk

awk详解使用用法