[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Perl hex Problem



Hallo Franz,

ohne das komplette Problem analysiert zu haben…

Franz Timmer <ftimmer@web.de> (Fr 24 Dez 2010 22:16:02 CET):
…
> # Verezichnis oeffnen
> @fileliste = glob($verz."/*.html")  or die "Verzeichnisangabe falsch";
> $/="";

Hier willst Du vermutlich nicht absatzweise (Absätze sind getrennt durch
eine oder mehrere Leerzeilen) einlesen. 
Denn wenn Du absatzweise arbeitest, wirst Du die Texte nicht finden, die
sich über eine Absatzgrenze (Zeilengrenze) erstrecken.

    $/ = undef;

… macht, daß das komplette File am Stück eingelesen wird. Wenn Du schon
mit $/ rumoperieren möchtest. Ansonsten hätte auch ein 

    $_ = join "" => <FH>;

seinen Zweck erfüllt.


> foreach $filename (@fileliste)
> { open(FH, $filename) or die "Konnte $filename nicht öffnen\n";
>   while(<FH>)
>   {
>     $_ =~ s|\s+| |gs;      # Leerzeichen entfernen
>     $_ =~ s|.*expand.sections||si; # Marke finden
>     print "$_ \n";
>   };
> };

  @fileliste = …
  foreach my $filename (@fileliste) {
    local $/ = undef;           # slurp mode
    open(my $fh, $filename) …
    $_ = <$fh>;
    …
  }

Und natürlich wäre es nicht Perl, wenn es nicht noch 12 andere
Möglichkeiten gäbe.

-- 
Heiko :: dresden : linux : SCHLITTERMANN.de
GPG Key 48D0359B : 3061 CFBF 2D88 F034 E8D2 7E92 EE4E AC98 48D0 359B

Attachment: signature.asc
Description: Digital signature


Reply to: