Probleme mit RegExps
Christoph aus Wien
- javascript
0 siro
Hallo
Ich versuche ein OPTION Tag mit Javascript zu entfernen
Es soll nur das entfernt werden, welches den value von x hat. Er findet mir jetzt schon das Öffnende OPTION Tag. Doch er nimmt nicht das nächste schließende OPTION Tag sondern das letzte. Wie mache ich das dass es das nächste nimmt?
ich dachte auch daran:
<option.value=("|'|)" + id + "("|'|)>.+[^option]</option>
dieses [^option] ist vermutlich nicht richtig
Hm
Christoph aus Wien
Hallo Christoph.
<option.value=("|'|)" + id + "("|'|)>.+[^option]</option>
Dein Problem ist das '.+', da dieser Ausdruck gierig (greedy) ist und damit so viel Buchstaben wie möglich matcht.
Lies dazu mal:
http://selfhtml.teamone.de/cgiperl/sprache/regexpr.htm#gierig_genuegsam
In kurz: Wenn du '.+?' schreibst wird der Ausdruck ungreedy und passt in deinem Fall auf alles, was vor dem _nächsten </option> steht.
dieses [^option] ist vermutlich nicht richtig
Stimmt so. Wenn etwas an dieser Stelle nicht stehen soll, dann schreib's halt nicht hin. ;-)
Außerdem hast du definiert, dass vor dem schließenden Tag keiner der Buchstaben aus dieser Klasse stehen darf, was sicher nicht dein Ziel war.
MfG _Siro.