gpt4 book ai didi

regex - 在 Perl 中,如何打印从文件中读取的行,并删除了可选的前导空格?

转载 作者:行者123 更新时间:2023-12-02 05:35:01 26 4
gpt4 key购买 nike

#!/usr/bin/perl 
open(SARAN,"first.txt") or die "Can't Open: $!\n";
while($line=<SARAN>)
{
print "$line\n";
}
close SARAN;

你好,在上面的 perl 脚本中,我需要一个功能......在 first.txt 中,每一行前面都有一些空格。我需要打印前面没有空格的行...做什么。

谢谢..

最佳答案

您的问题不明确:是否要打印未开始的行带空格或在删除任何前导空格后打印所有行?

@codaddict 展示了如何做后者。我将展示如何做前者:

#!/usr/bin/perl 

use strict;
use warnings;

open my $SARAN, '<', "first.txt"
or die "Can't open 'first.txt': $!";

while (my $line = <$SARAN>)
{
print $line unless $line =~ /^\s/;
}

close $SARAN;

注意以下几点:

  • 使用 strict会帮你捕获编程错误。
  • 使用 warnings会提醒你可疑的结构。
  • SARAN 等裸词文件句柄是包全局变量。使用词汇文件句柄。
  • 更喜欢 open 的三参数形式,特别是如果文件名是没有硬编码。
  • 在错误消息中包含文件名。
  • 既然你不是chomp荷兰国际集团$line, print "$line\n" 会导致换行符加倍。

关于regex - 在 Perl 中,如何打印从文件中读取的行,并删除了可选的前导空格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3735034/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com