Thread perl: leerzeilen entfernen (113 answers)
Opened by sabrina at 2006-08-07 10:33

renee
 2006-08-07 10:54
#68563 #68563
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Willst Du Leerzeilen (wie im Titel beschrieben) oder Leerzeichen (wie im Text beschrieben) entfernen?

So könntest Du Leerzeilen aus einer Datei entfernen:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#!/usr/bin/perl

use strict;
use warnings;

my $file = '/pfad/zu/datei.txt';
my @lines;

# öffne die Datei zum lesen und lese
# alles in ein Array ein
open(my $fh,'<',$file) or die $!;
while(my $line = <$fh>){
# schiebe die Zeile in das Array, wenn es keine Leerzeile ist
push(@lines,$line) if($line !~ /^\s*$/);
}
close $fh;

# öffne die Datei zum Schreiben und schreibe
# die Zeilen aus dem Array in die Datei
open(my $w_fh,'>',$file) or die $!;
print $w_fh $_ for(@lines);
close $w_fh;


Leerzeilen entfernen (mit Modul):
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
#!/usr/bin/perl

use strict;
use warnings;
use Tie::File;

my $file = '/pfad/zu/datei.txt';

tie my @lines,'Tie::File',$file or die $!;
@lines = grep{$_ !~ /^\s*$/}@lines;
untie @lines;


Leerzeichen entfernen:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#!/usr/bin/perl

use strict;
use warnings;

my $file = '/pfad/zu/datei.txt';
my @lines;

# öffne die Datei zum lesen und lese
# alles in ein Array ein
open(my $fh,'<',$file) or die $!;
while(my $line = <$fh>){
$line =~ s/\s//g;
push(@lines,$line);
}
close $fh;

# öffne die Datei zum Schreiben und schreibe
# die Zeilen aus dem Array in die Datei
open(my $w_fh,'>',$file) or die $!;
print $w_fh $_ for(@lines);
close $w_fh;


Leerzeichen entfernen (mit Modul):
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
#!/usr/bin/perl

use strict;
use warnings;
use Tie::File;

my $file = '/pfad/zu/datei.txt';

tie my @lines,'Tie::File',$file or die $!;
$_ =~ s/\s//g for(@lines);
untie @lines;
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/

View full thread perl: leerzeilen entfernen