Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5361835
  • 博文数量: 1144
  • 博客积分: 11974
  • 博客等级: 上将
  • 技术积分: 12312
  • 用 户 组: 普通用户
  • 注册时间: 2005-04-13 20:06
文章存档

2017年(2)

2016年(14)

2015年(10)

2014年(28)

2013年(23)

2012年(29)

2011年(53)

2010年(86)

2009年(83)

2008年(43)

2007年(153)

2006年(575)

2005年(45)

分类: LINUX

2010-05-13 10:39:05

#!/usr/bin/perl -w
use strict;
use Encode;
print packUcode('更换ab'),"\n";
#输出:\u66f4\u6362\u61\u62
print unpackUcode('\u66f4\u6362\u61\u62'),"\n";
#输出:更换ab
sub packUcode {
my $str=shift || return;
$str = encode('utf8', decode('gb2312',$str));
Encode::_utf8_on($str);
$str=~s/(\w)/sprintf(";
return $str;
}
sub unpackUcode {
my $str=shift || return;
$str =~ s/\\u([0-9a-fA-F]{2,4})/pack('U', hex($1))/eg;
Encode::_utf8_off($str);
$str = encode('gb2312', decode('utf8',$str));
return $str;
}
阅读(2954) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2010-05-21 08:14:13

Encode::_utf8_on(),这个函数是模块的内部函数,使用这个个人认为不是很礼貌。而且既然是内部函数,有可能在下一个版本改变,所以尽量减少使用,呵呵。