Patrick Andrieu: String Zeilenweise durchlaufen

Beitrag lesen

Hallo!

OK. Quick & Dirty bevor ich heia geh...
Nur einmal getestet und... geht ganz bestimmt eleganter:

  
use strict;  
chomp (my @eingabe = <STDIN>);  
my $check = 0;  
  
  
foreach (@eingabe) {  
  $check++ && next if (/Meerjungfraumann/) # Das wäre WORT1  
}  
if ($check > 0) {  
  foreach my $eingabe (@eingabe) {  
    $eingabe .= " und Blaubarschbube" if ($eingabe =~ /Meerjungfraumann/);  
    print $eingabe, "\n";  
  }  
}  
else {  
  foreach (@eingabe) {  
    print $_, "\n";  
  }  
  print "Und so muss es sein!"; # das wäre WORT1 WORT2  
}  

Wenn »Meerjungfraumann« in der ganzen Eingabe nicht vorkommt, wird am Ende »Und so muss es sein!« eingefügt, wenn aber nur eine Zeile »Meerjungfraumann« enthält, wird dies ergänzt mit " und Blaubarschbube".

Tests. Eingabe 1:

foo
bar
buz

Ausgabe:
foo
bar
buz
Und so muss es sein!

Eingabe 2:

Meerjungfraumann
Patrick Star
Sponge Bob bewundert Meerjungfraumann

Ausgabe:
Meerjungfraumann und Blaubarchbube
Patrick Star
Sponge Bob bewundert Meerjungfraumann und Blaubarschbube

Viele Grüße aus Frankfurt/Main,
Patrick

--

_ - jenseits vom delirium - _
[link:hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash]
Nichts ist unmöglich? Doch!
Heute schon gegökt?
0 72

String Zeilenweise durchlaufen

Perl Anfänger
  • perl
  1. 0
    Horst
    1. 0
      Perl Anfänger
      1. 0
        Struppi
        1. 0
          Perl Anfänger
          1. 1
            Patrick Andrieu
            1. 0
              Perl Anfänger
              1. 0

                Nachtrag

                Perl Anfänger
              2. 0
                Patrick Andrieu
                1. 0
                  Perl Anfänger
                  1. 0
                    Patrick Andrieu
                    1. 0
                      Perl Anfänger
                      1. 0
                        Patrick Andrieu
                        1. 1
                          Siechfred
                          1. 0
                            Patrick Andrieu
                          2. 0
                            Perl Anfänger
                            1. 0
                              Patrick Andrieu
                              1. 0
                                Patrick Andrieu
                                1. 0
                                  MudGuard
                    2. 0
                      Perl Anfänger
              3. 0
                Struppi
                1. 0
                  Patrick Andrieu
                  1. 0
                    MudGuard
                    1. 0
                      Patrick Andrieu
                      1. 0
                        MudGuard
                        1. 0
                          Patrick Andrieu
                          1. 0
                            MudGuard
                            1. 0
                              Patrick Andrieu
                2. 0
                  Perl Anfänger
                  1. 0
                    Struppi
                    1. 0
                      Perl Anfänger
                      1. 0
                        Patrick Andrieu
                        1. 0
                          Perl Anfänger
                          1. 0
                            Kurt Z
                            1. 0
                              Perl Anfänger
                              1. 0
                                Patrick Andrieu
                              2. 0
                                Kurt Z
                    2. 0
                      Patrick Andrieu
                      1. 0
                        Struppi
                        1. 0
                          Patrick Andrieu
                          1. 0
                            Perl Anfänger
                            1. 0
                              Patrick Andrieu
            2. 0
              Siechfred
              1. 0
                Patrick Andrieu
                1. 0
                  Siechfred
                  1. 0
                    Struppi
                    1. 0
                      Siechfred
                  2. 0
                    Patrick Andrieu
          2. 0

            so in der Art?

            Kurt Z
            1. 0
              Kurt Z
              1. 0
                Perl Anfänger
              2. 0
                Siechfred
                1. 0
                  Kurt Z
                  1. 0
                    Siechfred
                    1. 0
                      Kurt Z
                      1. 0
                        Siechfred
                        1. 0

                          Iterartorvariable

                          Kurt Z
                          1. 0
                            Siechfred
                            1. 0
                              Kurt Z
              3. 0
                Perl Anfänger
                1. 0
                  Kurt Z
                  1. 0
                    Perl Anfänger
                    1. 0
                      Kurt Z
                      1. 0
                        _Perl_ Anfänger ;-)
                        1. 0
                          Kurt Z
                          1. 0
                            Perl Anfänger
                            1. 0
                              Kurt Z
                              1. 0
                                Perl Anfänger
                                1. 0
                                  Siechfred
                                  1. 0
                                    Kurt Z
                                  2. 0
                                    Perl Anfänger
                                2. 0
                                  Kurt Z