Hi,ich bin zwar nicht für's Lösung posten, aber hierin habe ich eine Herausforderung gesehen. Und wenn Du Dir den Lerneffekt kaputt machen lassen willst, dann bitteschön. ;-)
Du solltest den Artikel mal *richtig* lesen. Die Lösung wird Dir quasi schon vorgegeben.
#!/usr/bin/perluse strict;
use warnings;
use CGI::Carp qw(fatalsToBrowser warningsToBrowser);
print "Content-type: text/plain\n\n";
my $text = "roman5.txt";
my ($out, $tmp);
open (F, "<", $text);
my @lines = <F>;
close (F);
chop( @lines );
my $lines = "@lines";
@lines = split ( /[Dd]u/, $lines );
for ( my $i = 0; $i < $#lines; $i++ ) {
$out = substr( $lines[$i], length($lines[$i]) - 20, 20 );
$out .= "du";
$out .= substr( $lines[$i + 1], 0, 20 );
print $out."\n";
}
exit 0;
Allerdings ist noch ein kleiner Fehler drinnen. Und zwar prüft das Skript so nicht ab, ob ein Teilstring, der links neben dem du stehen soll, möglicherweise zu kurz ist. Es müsste dann nämlich mit Leerzeichen auffüllen.-uw
Datum: 11.04.2006-15:15
