Christoph Jochems: reg exp findet zx9r in zx9rirgendwas nicht?

Beitrag lesen

Hallo Denis,

mir scheint, der Fehler liegt nicht in dem regulären Ausdruck, sondern
in der foreach-Schleife:

Gucken, was jetzt noch in den Stichworten doppelt ist:

$cnt = 0;
my $tmpstichworte = "@stichworte";
print $tmpstichworte . "\n";
my @einfacheTreffer;
foreach $stichwort (@stichworte) {
  $anzahl = 0;
  while ($tmpstichworte =~ /$stichwort/gi) {
     $anzahl++;
    }
  print "$& ->";
  if ($anzahl > 1) {
   print "Mehr als ein Treffer fuer $stichwort!\n";
   splice(@stichworte,$cnt,1);
  }
  $cnt++;
}

$cnt wird immer um 1 erhöht, Du nimmst aber in splice Elemente aus dem
Array heraus.

Viele Grüße

Christoph