perl:内置函数chr/ord如何用?

来源:百度知道 编辑:UC知道 时间:2024/09/24 11:21:02
我就是因为看不懂网页上的解释才来这里提问的..............

Perl 的内置函数 chr/ord 可用来在 Unicode code point(为一数字)和 character 之间转换
下面是使用它们的两个简单示例。

#!/usr/bin/perl

# t0.pl

use strict;
use warnings;

binmode (STDIN, ":utf8");
binmode (STDOUT, ":utf8");
while(<>){
chomp;
my $c = ord;
printf "$_ = 0x%x\n", $c;
}

#!/usr/bin/perl

# t1.pl

use strict;
use warnings;

binmode (STDOUT, ":utf8");
while(<>){
chomp;
my $c = chr(hex);
print "$_ = $c\n";
}

注意在 t1.pl 中,由于假设读入的数字为 16进制,因此需要用 hex 转换一下。

例子
$ cat t0

$ cat t1
0x263a
$ ./t0.pl < t0
☺ = 0x263a
$ ./t1.pl < t1
0x263a = ☺

参考资料的文章看了就知道。其实提问前百度一下是个好习惯。