作者zard1989 (St. Kevin)
看板Perl
标题Re: [问题] 固定长度的中英文句字处理?
时间Tue Jun 22 19:23:45 2010
※ 引述《tumc (HIHIHI)》之铭言:
: 如果是一个句子里面混杂了big5及英文字,
: 如果要将句子控制在一个固定的长度,也就是多的部份要截掉
: ,但希望截的"乾净",也就是不希望发生中文字被截一半,造成奇怪的字出现
: 请问该如何做呢?
: ex:
: 若是要固定输出不能超过为5个中文字
: $s="这句有5个半" => "这句有5个"
: $s="这句是六个整" => "这句是六个"
: $s="最後是数字5" => "最後是数字"
可在档案前头加入下列Code:
use encoding 'big5', STDIN => 'big5', STDOUT => 'big5';
这麽一来Perl就能认得Big5了。
print substr("这句有5个半", 0, 5),"\n"; # => 这句有5个
若是utf8的话,请加入:
use utf8;
binmode STDOUT, ":utf8";
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.214.6