在 perl 中,可以在哈希初始化中使用 HEREIS 符号吗?
In perl, can HEREIS notation be used inside hash initialization?
我正在尝试像这样初始化哈希:
use strict;
my %hash =
(
key => <<END;
abc
def
END
,
another_key => 17
);
当我在此代码上运行 perl -cw 时,出现错误 'syntax error at hash-initialize-test.pl line 5, near ";"'。
有没有办法在哈希初始化中使用 HEREIS 符号(例如 <<END;
)?如果不是,为什么不呢?
有几种简单的解决方法,但我喜欢对多行字符串使用 HEREIS 表示法,因为它很优雅,并且避免引入不必要的变量。
删除分号。没有语句结束。
my %hash = ( key => <<'END',
abc
def
END
another_key => 17,
);
我正在尝试像这样初始化哈希:
use strict;
my %hash =
(
key => <<END;
abc
def
END
,
another_key => 17
);
当我在此代码上运行 perl -cw 时,出现错误 'syntax error at hash-initialize-test.pl line 5, near ";"'。
有没有办法在哈希初始化中使用 HEREIS 符号(例如 <<END;
)?如果不是,为什么不呢?
有几种简单的解决方法,但我喜欢对多行字符串使用 HEREIS 表示法,因为它很优雅,并且避免引入不必要的变量。
删除分号。没有语句结束。
my %hash = ( key => <<'END',
abc
def
END
another_key => 17,
);