如何打印地址字符串,而不让Perl将斜杠作为转义字符?我也不想通过添加更多的转义字符来改变字符串。
发布于 2010-01-22 15:34:57
你所问的是所谓的插值。请参阅perldoc perlop上的"Quote-Like Operators"文档,但更具体的方法是使用名为"here-document“的语法并使用单引号:
单引号表示文本将按字面处理,不对其内容进行插值。这与单引号字符串类似,不同之处在于反斜杠没有特殊含义,\被视为两个反斜杠,而不是每个其他引号构造中的一个。
这是perl中唯一不需要担心转义内容的引用形式,代码生成器可以并且确实很好地利用了这一点。
例如:
my $address = <<'EOF';
blah@blah.blah.com\with\backslashes\all\over\theplace
EOF您可能希望阅读各种其他引用运算符,如qw和qq (在上面引用的同一文档中),因为它们是非常常用的,并且是其他更冗长的转义内容方法的很好缩写。
发布于 2010-01-22 15:02:34
这取决于您要转义的内容,但类似于Quote的运算符可能会有所帮助。
请参阅perlop手册页。
发布于 2013-04-27 15:52:59
使用两次回击,
print "This is a backslah character \\";https://stackoverflow.com/questions/2115518
复制相似问题