在awk中并未直接提供ord函数,所以在将某个字符转换为码时,需要自己来实现

复制代码 代码如下:
awk 'BEGIN{for (i = 0; i < 256; ++i) {ord[sprintf("%c", i)] = i;} }'  ' { print ord['a'];  ord ['b']; }'

这里主要是构造了ord为key,val的数据结构,key为char字符,val对应的ascii码

附:awk得到字母的ASC值实现
复制代码 代码如下:
-(dearvoid@LinuxEden:Forum)-(~/tmp)-
[$$=18347 $"%c", ii);
        ascii[ch] = ii;
    }

    for (ii = 1; ii < ARGC; ii++) {
        print "ord(" ARGV[ii] " = " ascii[ARGV[ii]];
    }
}
-(dearvoid@LinuxEden:Forum)-(~/tmp)-
[$$=18347 $?=0] ; ./foo.awk a b c 1 2 3
ord(a) = 97
ord(b) = 98
ord(c) = 99
ord(1) = 49
ord(2) = 50
ord(3) = 51
-(dearvoid@LinuxEden:Forum)-(~/tmp)-
[$$=18347 $?=0] ; bye

标签:
awk,ord函数

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
无争山庄资源网 Copyright www.whwtcm.com

评论“awk中实现ord函数功能”

暂无“awk中实现ord函数功能”评论...