[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
REDAXO Forum • Regex Zeichen ignorieren
Seite 1 von 1

Regex Zeichen ignorieren

Verfasst: 23. Okt 2013, 12:27
von frood
Moin!

Ich habe ein Input-Feld. onKeyUp wird die Eingabe mit den Option-Values eines Selectfeldes verglichen und der entsprechende value gesetzt, z.B.

Eingabe: 660-ke => selectfeld springt zu: 660-KE - #Artikelname#
Die Bindestriche filtere ich vorher raus, damit die Eingabe 660ke auch trifft:

Code: Alles auswählen

inputvalue = inputvalue.replace('-', '');
opt_gefiltert = optionen[$i].replace('-', '');

var re = new RegExp(inputvalue,"i");
  	
if (opt_gefiltert.match(re)){ ###selectvalue setzen ###}
Funktioniert auch gut.

Meine Frage: Kann man auch direkt über den regulären Ausdruck bestimmte Zeichen, in diesem Falle die Bindestriche, ignorieren? Geht bestimmt, aber RegEx ist nicht gerade mein Ding ;)

Gruss, Frood

Re: Regex Zeichen ignorieren

Verfasst: 24. Okt 2013, 22:32
von runstop64
Hi Frood,

schau mal hier http://de.selfhtml.org/javascript/objekte/regexp.htm, da solltest du den passenden Platzhalter finden...

Re: Regex Zeichen ignorieren

Verfasst: 25. Okt 2013, 10:48
von Xong
Hi Frood,

der Punkt matcht alle Zeichen. Mit dem Fragzeichen kannst du dann noch sagen, dass das Zeichen optional ist.

Allerdings ist das für deine Belange so gut wie irrelevant, weil du es bei der Sucheingabe sowieso nur mit den Varianten mit und ohne Bindestrich zu tun haben wirst. Deshalb ist dein derzeitiger Code schon in Ordnung und am performantesten so.

Re: Regex Zeichen ignorieren

Verfasst: 25. Okt 2013, 11:05
von frood
Danke, Jungs, ich denke auch, ich lass es so ....

@runstop64: den Link kenne ich natürlich, hilft aber nur, wenn man sich mit regex auskennt oder die Zeit hat, sich damit intensiver zu beschäftigen, was ich bisher (Gott sei Dank!) nicht musste, aber sicher irgendwann muss. Bis dahin "schummel" ich mich durch ;)