use strict;
use warnings;
use Data::Dumper;
my %h;
my $undef = undef;
$h{''}='test2';
$h{$undef} = 'test';
print Dumper (\%h);
Run Code Online (Sandbox Code Playgroud)
创建以下输出:
$VAR1 = {
'' => 'test'
};
Run Code Online (Sandbox Code Playgroud)
为什么会这样?我有Perl 5.12.3.
谢谢你的时间.
我正在寻找Perl中的函数,删除0x20以下的所有前导和尾随字符,就像在Java中一样.
在以下字符串上调用函数后.
my $string = "\N{U+0020}\N{U+001f}\N{U+001e}\N{U+001d}\N{U+001c}\N{U+001b}\N{U+001a}\N{U+0019}\N{U+0018}\N{U+0017}\N{U+0016}\N{U+0015}\N{U+0014}\N{U+0013}\N{U+0012}\N{U+0011}Hello Moto\N{U+0010}\N{U+000f}\N{U+000e}\N{U+000d}\N{U+000c}\N{U+000b}\N{U+000a}\N{U+0009}\N{U+0008}\N{U+0007}\N{U+0006}\N{U+0005}\N{U+0004}\N{U+0003}\N{U+0002}\N{U+0001}\N{U+0000}";
Run Code Online (Sandbox Code Playgroud)
只剩下"Hello Moto".
String :: Util的修剪仅删除第一个空格(\ N {U + 0020}).