Simple Suche

  • Themenstarter Themenstarter grkpfl
  • Beginndatum Beginndatum
G

grkpfl

Hallo!

Hab ne simple Frage:

Also ich habe eine variable var text, welche einen längeren Text enthält.
Nun gibt es noch ein Input-Feld (name="such_feld"), mit dem ich in var text
suchen möchte.

Das ist ja eigentlich ganz simpel, ich hab es folgendermassen gelöst:

HTML:
var text = "bla bla bla.....";
function suchen(such_text)
{
    if(text.search(such_text) == -1)
    {alert("kein Ergebniss!");}else{alert("gefunden");}
}

und natürlich:
HTML:
<input type=submit onClick="suche(document.form.such_feld.value)" .... usw>

(Eigentlich ist das ja keine Suche, sondern eher ein Script, welches mir sagt, ob die Zeicehnfolge des Input-Feldes vorhanden ist, aber dass ist eben genau das was ich brauche)

Mein Problem ist ja folgendes:
Den "Suchberiff" kann man ja während der laufzeit im Input-Feld eingeben, und dieser
wird direkt als pattern bei text.search(such_text) verwendet :-)
Gibt es da schönere Möglichkeiten? Wenn ich nun nämlich klammern usw. eingebe, meldet sich da natürlich ein JS-Fehler...
Ich hab das auch schon mit einer replace() funktion zu verhindern versucht, indem ich den text vom inputfeld erstmal mit folgendem pattern bearbeitet habe:
replace(/[^\d\w\s]+/g, '');
Problem hierbei ist wiederrum, das man nichtmal mehr einen Punkt im Such-Text verwenden kann... und hier dann alle Sonderzeichen einzubringen wäre vllt etwas aufwendig..

Also wenn mir jemand helfen könnte wäre das echt verdammt super..

Mit freundlichen Grüßen,
grkpfl
 
Hi.

Die Methode search eines String Objekts erwartet als Parameter einen regulären Ausdruck. Du solltest lieber die indexOf Methode verwenden - die sucht nach einem String ohne Spezialzeichen zu interpretieren.

Gruß
 
uaah!!
Perfekt!
Vielen herzlichen Dank.
Echt spitze, genau was ich brauche :)
 

Neue Beiträge

Zurück