perl use utf8
utf8 Perl编译 来启用/禁用 UTF-8(or UTF-EBCDIC) 在源代码里 简洁: use utf8;
no utf8; # Convert the internal representation of a Perl scalar to/from UTF-8. $num_octets = utf8::upgrade($string);
$success = utf8::downgrade($string[, $fail_ok]); # Change each character of a Perl scalar to/from a series of
# characters that represent the UTF-8 bytes of each original character. utf8::encode($string); # "\x{100}" becomes "\xc4\x80"
utf8::decode($string); # "\xc4\x80" becomes "\x{100}" # Convert a code point from the platform native character set to
# Unicode, and vice-versa.
$unicode = utf8::native_to_unicode(ord('A')); # returns 65 on both
# ASCII and EBCDIC
# platforms
$native = utf8::unicode_to_native(65); # returns 65 on ASCII
# platforms; 193 on
# EBCDIC $flag = utf8::is_utf8($string); # since Perl 5.8.1
$flag = utf8::valid($string) 描述: 使用utf8 编译告诉perl解析器 允许UTF-8在程序文本在当前的词法范围。 no utf8 编译告诉Perl 切回到对待文本作为literal 字节在当前的词法范围。 (在EBCDIC 平台,技术是允许UTF-EBCDIC, 不是UTF-8. 但是这个区别是学术的,因此在这个文件术语UTF-8是用于两者) 不要使用这个编译除了告诉Perl你的脚本是用UTF-8写的。 下面的描述是直接使用没有use utf8: 因为它不可能可靠的告诉UTF-8 从本地的8位编码, 你需要一个字节顺序标记在你的源代码的开始,或者use utf8,来指导perl 当UTF-8 变为标准的源代码格式,这个指令会有效的 变成一个 no-op 也可以查询-C切换的影响和它的cousin, PERL_UNICODE 环境变量 启动utf8程序有下面的影响: 在源文本中的字节不是以 ASCII character set 会被对待一个 literal UTF-8 sequence的一部分。 这包括很多的literals 比如标识符名称,字符串常量,和恒定的正则表达式模式。 注意如果你有non-ASCII, non-UTF-8 字节在你的脚本 use utf8会不高兴。因为你需要有这样的字节在use utf8, 你可以禁用这个程序直到最后的块(或者文件,如果在顶层) 通过使用no utf8 有用的函数; 下面的函数是定义在e utf8:: package,你不需要say use utf8 来使用那些 实际上 你不应该say 除非你真的需要UTF-8源代码
perl use utf8的更多相关文章
- perl unload utf-8 oracle 数据库
perl unload utf-8 Oracle [oracle@oadb sbin]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Produc ...
- perl unload utf-8 oracle Wide character in print at unload_oracle.pl line 105.
#!/usr/bin/perl use DBI; use Encode; my $dbName = 'oadb'; my $dbUser = 'vxspace'; my $dbUserPass = ' ...
- perl unicode utf-8 \x转换
[root@dr-mysql01 ~]# cat x5.pl use Encode; use JSON; use URI::Escape; use LWP::Simple; my $host = &q ...
- perl oracle utf-8 结果匹配中文字符
[oracle@oadb sbin]$ cat s1.pl #!/usr/bin/perl use DBI; use Encode; use HTTP::Date qw(time2iso str2ti ...
- Perl中文/unicode/utf8/GB2312之间的转换
参考:http://daimajishu.iteye.com/blog/959239不过具测试,也有错误:原文如下: # author: jiangyujieuse utf8; ##在最后一个例子, ...
- perl 学习笔记
一:基础 1:安装perl centos: yum -y install perl 官网:https://www.perl.org/ 升级到5.22:先下载,执行./i ...
- 【转】Perl Unicode全攻略
Perl Unicode全攻略 耐心看完本文,相信你今后在unicode处理上不会再有什么问题. 本文内容适用于perl 5.8及其以上版本. perl internal form 在Perl看来, ...
- Perl Unicode全攻略
Perl Unicode全攻略 耐心看完本文,相信你今后在unicode处理上不会再有什么问题. 本文内容适用于perl 5.8及其以上版本. perl internal form 在Perl看来, ...
- perl字符集处理
本文内容适用于perl 5.8及其以上版本. perl internal form 在 Perl看来, 字符串只有两种形式. 一种是octets, 即8位序列, 也就是我们通常说的字节数组. 另一种u ...
随机推荐
- Square(hdu 1511)
题目描述: Problem Description Given a set of sticks of various lengths, is it possible to join them end- ...
- Qt Creator插件工作流程代码走读
Qt Creator有个很风骚的插件管理器PluginManager,还有个很骚包的插件说明PluginSpec.基本上,所有的Qt程序的入口都是传统的C程序一样,代码流程从main()函数开始. ...
- Qt 代码: 子窗口调用父窗口(其实就是用指针直接访问)
之前的 Qt 编程大多只涉及简单的多窗口,并未染指窗口间的传值交互,想来还是“涉世未深”,对 Qt 的理解.应用还需殷勤努力. 这次的问题是这样的,我想要实现一个类似QQ.阿里旺旺的聊天客户端,在弹出 ...
- CMake学习小结
假定有vegagis工程,工程的目录结构如下: #--vegagis# |--src 源文件目录# |--gui 界面工程,输出类型:dll,依赖于QT的QtCore.QtGui.QtXml ...
- MFC不使用对话框资源模版创建对话框
在MFC程序中使用对话框时首先在资源模版里创建对话框资源,然后DoModal()或者CReate显示出模式对话框或者非模式对话框,这样创建出的对话框移植性差,从一个工程移动到另一个工程比较麻烦. 在M ...
- 包子IT面试培训
包子IT面试培训 IT 面试不再怕,包子帮你圆个梦!
- http Post 请求一网络资源返回字符串
public static String sendPost(String url, String param) { PrintWriter out = null; BufferedReader ...
- Problem 2169 shadow
Problem 2169 shadow Accept: 141 Submit: 421 Time Limit: 1000 mSec Memory Limit : 32768 KB Pr ...
- python字符串方法以及注释
转自fishC论坛:http://bbs.fishc.com/forum.php?mod=viewthread&tid=38992&extra=page%3D1%26filter%3D ...
- 【Hibernate】Illegal attempt to associate a collection with two open sessions
今天在用Hibernate对对象进行修改操作的时候报了这个错. 之前一直没什么错误,但是今天修改了一下表结构,增加了一个OneToMany的映射. 所以在我获取对象,重新set一个变量之后就报了这个错 ...