Perlで空白行を削除する方法は何ですか?

Perlの空白行を削除する方法はいくつかありますが、一般的な方法のひとつは次の通りです:

  1. 空行を削除するために正規表現を使う:
while (<>) {
    next if /^\s*$/;  # 如果行只包含空格或制表符,则跳过
    print;
}

入力ファイルの各行を読み取るために、< > 演算子を使用します。/^ \ s * $ / の場合は、スペースまたはタブのみを含む行をスキップします。残りの行は印刷されます。

  1. chomp関数を使用して空白行を削除します。
while (<>) {
    chomp;  # 删除行末尾的换行符
    next if /^\s*$/;  # 如果行只包含空格或制表符,则跳过
    print $_ . "\n";
}

chomp関数は行の末尾の改行文字を削除するために使用されます。その他の部分は最初の方法と同じです。

  1. 配列とgrep関数を使用して空白行を削除します。
while (<>) {
    push @lines, $_;  # 将每一行存储在数组中
}

@lines = grep { /\S/ } @lines;  # 使用grep函数删除只包含空格或制表符的行

foreach my $line (@lines) {
    print $line;
}

@linesに各行を保存し、grep関数と正規表現/\S/を使用して、空白またはタブのみの行をフィルタリングします。最後にforeachループを使用して残りの行を出力します。

これらの方法はすべて空白行を削除することができますが、具体的にどの方法を使用するかは、あなたのニーズや個人の好みによります。

bannerAds