Claude: RegExp: Beispiel geht mit IE aber nicht mit Firefox

Beitrag lesen

Hallo,

Habe eine kleine Suchfunktion erstellt, die ich auf meiner Homepage schon länger im Einsatz habe. Leider geht diese NUR mit MS IE, aber nicht mit Firefox. Bei Firefox werden keine Einträge gefunden (also Treffer immer 0).
Wahrscheinlich habe ich Fehler bei RegExp.
Hier der Auszug der Funktion:

for (i = 0; i <= anzp; i++) { //jeden Block bzw Array durchsuchen
 ergzw=0; //zurücksetzen für jeden Block
 for (var j = 0; j < suchwortanz; j++) { //für jedes Wort suchen
  suche = new RegExp (suchwort[j],"gi");
  var ergebnis = suche.exec(inhalttxt[i]);
  if(ergebnis != null)
   ergzw++;
 }
 if(ergzw == suchwortanz) { //wenn ergzw = anzahl der Suchwoerter (bei UND) ... alle wörter gefunden
     document.writeln(inhalthtml[i]);
  treffer++;
 } else {
  document.write(".");
 }
}

Erläuterung Variablen:

  • Anzp ist die Anzahl der Blöcke zwischen <P></P> die durchsucht werden
  • inhalttxt wird weiter oben mit document.getElementsByTagName("p")[k].innerText; ermittelt
  • inhalthtml wird mit OuterHtml gefüllt.
  • suchwortanz = Anzahl der Suchwörter, die weiter oben mit Split separiert wurden
  • suchwort(j) enthält das Suchwort (String)

Da ich weiss, dass Firefox das InnerText nicht unterstützt, habe ich das gleiche mit
   var ergebnis = suche.exec(inhalthtml[i]);
(also OuterHtml) versucht. Geht aber auch nicht.

Sieht irgendjemand etwas, dass mit Firefox Probleme macht? ... bin noch Anfänger. Auch der Aufbau der Schleife ist vielleicht für die Profis unter euch etwas laienhaft .... wie gesagt, bin noch Anfänger, und programmiere sonst mit VBA.

Vielen Dank an euch.
Gruss
Claude