【问题标题】:Perl interpreter: convert '\n' into newline? [duplicate]Perl 解释器:将 '\n' 转换为换行符? [复制]
【发布时间】:2013-11-22 07:09:45
【问题描述】:

我在 perl 中有一个程序,它从控制台传递了一个字符串。如果我从控制台传递字符串 \r\n ,它会按预期执行并将 \r\n 存储到控制台参数中,因为它是这样创建的:

my $str = '\r\n';

如何将 $str 变成 CRLF?例如;我该怎么做

my $str = '\r\n';

进入

my $str = "\r\n"; #<--- perl converts \r\n into a carriage return & line feed.  

如何强制 perl 将从控制台传递的字符串转换为 CRLF?

如果我不够清楚,让我举个例子:

my ($arg1, $arg2) = @ARGV;
print $arg1 . $arg2;

假设$arg1 已通过'Hello\r\n' 并且$arg2 已通过'World!' 它会在我希望它打印Hello(newline)World! 时打印Hello\r\nWorld!

【问题讨论】:

    标签: perl


    【解决方案1】:

    您可以使用String::Escape 中的unbackslash 函数来执行此操作:

    use String::Escape qw( unbackslash );
    
    my $str = 'Hello\r\nWorld\r\n';
    
    print unbackslash($str);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-06-24
      • 1970-01-01
      • 2021-08-27
      • 2018-05-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多