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 ) 返回经f m t格式化后的e x p
sub(r,s) 用$0中最左边最长的子串代替s
substr(s,p) 返回字符串s中从p开始的后缀部分
substr(s,p,n) 返回字符串s中从p开始长度为n的后缀部分
内部函数测试,以split为例 awk数组
awk 'BEGIN{print split("1#2#3",myarray,"#") "|" myarray[1],myarray[2],myarray[3]}';
3|1 2 3
使用split返回字符串数组元素个数。工作方式如下:如果有一字符串,包含一指定分隔 符"#",例如"1#2#3",将之划分成一个数组。使用split,指定分隔符及数组名。例中,命令格式为split( "1#2#3",myarray," - "),split然后返回数组下标数,这里结果为3。