Thread Zeile und Zeichen davor löschen (5 answers)
Opened by Tobias at 2012-10-02 09:05

topeg
 2012-10-02 10:03
#162303 #162303
User since
2006-07-10
2611 Artikel
BenutzerIn

user image
CPAN:Tie::File kenne ich natürlich, und würde ich bei komplexeren Manipulationen auch vorschlagen. Für einen Anfänger halte ich die Version zu Fuß für leichter verständlich.

Aber der Vollständigkeit halber:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#!/usr/bin/perl
use strcit;
use warnings;
use Tie::File;

my $file=$ARGV[0] or die("No File defined!\n");

tie( my @data, 'Tie::File', $file ) or die "Can't open $file ($!)\n";

for my $pos ( reverse (0..$#data) )
{
  if($pos>0 and $data[$pos]=~/<SUCHSTRING>/)
  {
    $data[$pos-1]=~s/.\n/\n/;
    splice(@data,$pos,1);
  }
}

print join('',@data);

untie(@data);

View full thread Zeile und Zeichen davor löschen