[ Perl ] 如何打印字符串的原始字符(字面量)

https://www.cnblogs.com/yeungchie/

有时候需要将字符串的字面量打印出来,即不转义字符串中的转义字符,例如:

my $str = function_xxx();

从某个接口获取到字符串,现在假设 $str 取到的数据是 "a\nb\nc\n"

简单打印一下:

print $str;

结果会显示:

a
b
c

如果我希望打印出来的结果是下面的样子,应该怎么做呢?

"a\nb\nc\n"

使用模块

use Data::Dumper;

定义一个函数

sub rawStr {
    local $Data::Dumper::Terse = 1;  # 精简输出
    local $Data::Dumper::Useqq = 1;  # 双引号表示字符串,且会处理特殊字符
    chomp ( my $raw = Dumper shift );
    return $raw
}

使用例程

print &rawStr( $str );

"a\nb\nc\n"

参考资料

拓展

  • Skill 中打印字符串字面量
str = "a\nb\nc\n"

printf( "%A" str )
; "a\nb\nc\n"
posted @ 2023-12-07 00:02  YEUNGCHIE  阅读(113)  评论(0编辑  收藏  举报