-1

出力をPerlスクリプトに保存するスクリプトを作成しましたが、何らかの理由で、各行の終わりにスペースが残っています。Perl正規表現を使用してみましたが、機能しません。誰かが私のコードを見て、私が間違っていることを教えてもらえますか?

マイコード

 open FILE, ">", "finaloutput.txt" || die "cannot create";
 my @output = ``; # (here i am using back ticks to run third party command)
 foreach  my $output (@output) {
     chomp $output;
     my $remove_whitespace = $output;
     $remove_whitespace =~ s/^\s+|\s+$//g;
     print  FILE "$remove_whitespace  \n";
 }
 close FILE;

これを行った後でも、出力の各行の終わりに空白が残ります。案内してください。

ありがとう。

4

3 に答える 3

6

print FILE "$remove_whitespace \n";各行の最後に2つのスペースを追加する場合は、print FILE "$remove_whitespace\n";代わりに

于 2012-08-29T15:01:43.670 に答える
1

すべての行の終わりに2つのスペースを配置しています。

print  FILE "$remove_whitespace  \n";
                               ^^
                               ||

それらを取り除きます!ソリューション:

print FILE "$remove_whitespace\n";
  -or-
print FILE $remove_whitespace, "\n";
于 2012-08-29T15:01:49.723 に答える
0

何らかの理由で、printステートメントの最後に複数のスペースを含めています。印刷ステートメントを次のように変更します。

print FILE "$remove_whitespace\n";

また、グローバルスタイルのファイルハンドルはもう使用しないでください。代わりに、次のようなものを使用してください。

open my $file, '>', "output.txt";
print $file "Some string\n";
close $file;
于 2012-08-29T15:01:39.507 に答える