Perl具有Python的多行字符串吗?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (31)

在Python中,你可以使用文档字符串像这样使用多行字符串:

foo = """line1
line2
line3"""

在Perl中是否有相同的东西?

提问于
用户回答回答于

Perl没有明显的语法垂直空白,所以你可以这样做:

$foo = "line1
line2
line3
";

相当于 :

$foo = "line1\nline2\nline3\n";
用户回答回答于

正常方式如下:

# Non-interpolative
my $f = 'line1
line2
line3
';

# Interpolative
my $g = "line1
line2
line3
";

这里的文档允许你将任何标记定义为引用文本块的结尾:

# Non-interpolative
my $h = <<'END_TXT';
line1
line2
line3
END_TXT

# Interpolative
my $h = <<"END_TXT";
line1
line2
line3
END_TXT

正则表达式的引号操作符让你几乎可以使用任何字符作为分隔符 - 就像正则表达式允许你改变分隔符一样:

# Non-interpolative
my $i = q/line1
line2
line3
/;

# Interpolative
my $i = qq{line1
line2
line3
};

扫码关注云+社区

领取腾讯云代金券