String 在perl中从字符串中删除多个新行
我有这样一个字符串:String 在perl中从字符串中删除多个新行,string,perl,newline,String,Perl,Newline,我有这样一个字符串: city: London Code: 123 address: 1, Napoleon Phone: 123-123-1232 所有行都在一个字符串中,我想打印所有信息,但在一行中用分隔符 我尝试使用以下代码: $val =~ s/\n/\ /; 但是什么都没有。你很接近了,你需要修饰符g 查看此程序的行为,第二次打印将显示所需内容 您可以在perldoc.perl.org上看到中的所有修饰符 use strict; use warnings; my $val = &
city: London
Code: 123
address: 1, Napoleon
Phone: 123-123-1232
所有行都在一个字符串中,我想打印所有信息,但在一行中用分隔符
我尝试使用以下代码:
$val =~ s/\n/\ /;
但是什么都没有。你很接近了,你需要修饰符
g
查看此程序的行为,第二次打印将显示所需内容
您可以在perldoc.perl.org上看到中的所有修饰符
use strict;
use warnings;
my $val = <<'END';
city: London
Code: 123
address: 1, Napoleon
Phone: 123-123-1232
END
print $val;
$val =~ s/\n/ /g;
print $val;
使用严格;
使用警告;
my$val=我认为音译操作符也会起作用:
$val =~ tr/\n/ /;
音译对字符进行了一对一的映射,这意味着它不是多用途的,但对于这样的事情它做得很好。它还可以做一些很酷的事情,比如:
$val =~ tr/\n/ /s;
其中“s”后缀表示在有空格的情况下,取任意数量的换行符并用一个空格替换它们——比如“地址行2”是可选的,可能是空的。那么,您的代码是什么,它是如何失败的?请回答您的问题并添加相关代码。我没有代码,我真的不知道如何执行此操作我不知道此编辑是否对您有帮助,但我所有的…@raulvarga正如您现在看到的,当您向我们展示您所拥有的时,它确实有帮助:)。我建议总是这样做:发布你的代码。(此外,除了能够帮助您解决问题外,人们通常还会提供其他改进。)