linux打印余弦函数,linux 命令详解 十二

字符串函数sub(regular expression,substitution string);sub(regular expression,substitution string,target string);/> awk '{sub("Tom","Tommy"); print}' employees   #这里使用Tommy替换了Tom。Tommy Jones       4424    5/12/66         543354

#当正则表达式Tom在第一个域中第一次被匹配后,他将被字符串"Tommy"替换,如果将sub函数的第三个参数改为$2,将不会有替换发生。/> awk '{sub("Tom","Tommy",$1); print}' employeesTommy Jones       4424    5/12/66         543354gsub(regular expression,substitution string);gsub(regular expression,substitution string,target string);和sub不同的是,如果第一个参数中正则表达式在记录中出现多次,那么gsub将完成多次替换,而sub只是替换第一次出现的。index(string,substring)该函数将返回第二个参数在第一个参数中出现的位置,偏移量从1开始。/> awk 'BEGIN{print index("hello","el")}'2length(string)该函数返回字符串的长度。/> awk 'BEGIN{print length("hello")}'5substr(string,starting position)substr(string,starting position,length of string)该函数返回第一个参数的子字符串,其截取起始位置为第二个参数(偏移量为1),截取长度为第三个参数,如果没有该参数,则从第二个参数指定的位置起,直到string的末尾。/>  awk 'BEGIN{name = substr("Hello World",2,3); print name}'ellmatch(string,regular expression)该函数返回在字符串中正则表达式位置的索引,如果找不到指定的正则表达式就返回0.match函数设置内置变量RSTART为字符串中子字符串的开始位置,RLENGTH为到字字符串末尾的字符个数。/> awk 'BEGIN{start=match("Good ole CHINA", /[A-Z]+$/); print start}'10上例中的正则表达式[A-Z]+$表示在字符串的末尾搜索连续的大写字母。在字符串"Good ole CHINA"的第10个位置找到字符串"CHINA"。/> awk 'BEGIN{start=match("Good ole CHINA", /[A-Z]+$/); print RSTART, RLENGTH}'10 5

RSTART表示匹配时的起始索引,RLENGTH表示匹配的长度。/> awk 'BEGIN{string="Good ole CHINA";start=match(string, /[A-Z]+$/); print substr(string,RSTART, RLENGTH)}'CHINA这里将match、RSTART、RLENGTH和substr巧妙的结合起来了。toupper(string)tolower(string)以上两个函数分别返回参数字符串的大写和小写的形式。/> awk 'BEGIN {print toupper("hello"); print tolower("WORLD")}'HELLO

worldsplit(string,array,field seperator)split(string,array)该函数使用作为第三个参数的域分隔符把字符串分隔为一个数组。如果第三个参数没有提供,则使用当前默认的FS值。/> awk 'BEGIN{split("11/20/2011",date,"/"); print date[2]}'20variable = sprintf("string with format specifiers ",expr1,expr2,...)该函数和printf的差别等同于C语言中printf和sprintf的差别。前者将格式化后的结果输出到输出流,而后者输出到函数的返回值中。/> awk 'BEGIN{line = sprintf("%-15s %6.2f ", "hello",4.2); print line}'hello             4.20时间函数:systime()该函数返回当前时间距离1970年1月1日之间相差的秒数。/> awk 'BEGIN{print systime()}'1321369554strftime()时间格式化函数,其格式化规则等同于C语言中的strftime函数提供的规则,见以下列表:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值