Anfängerverständnisfrage: regulärer Ausdrücke
Amit
- javascript
0 TomTom0 Andreas-Lindig0 Amit
Hi Allesamt
http://selfhtml.teamone.de/javascript/objekte/regexp.htm
Theoretisch verstanden, aber warum um alles in der Welt ist das Suchergebnis auch 2, wenn ich die Varibale derSatz in
var derSatz = "Auf der Mauer sitzt Klaus.";
ändere?
o_O
greez
Amit
Scheint doch keine Anfängerfrage zu sein - verhält sich wirklich unlogisch ....
Hallo kAmit,
http://selfhtml.teamone.de/javascript/objekte/regexp.htm
so ist's richtig:
http://selfhtml.teamone.de/javascript/objekte/regexp.htm#exec ;) - "derSatz" kommt häufiger auf der angegebenen Seite vor.
Theoretisch verstanden,
wahrscheinlich nicht ganz, ist auch dürftig erklärt.
aber warum um alles in der Welt ist das Suchergebnis auch 2, wenn ich die Varibale derSatz in var derSatz = "Auf der Mauer sitzt Klaus."; ändere?
Weil reg.exec folgendes Array zurückgibt:
ergebnis[0] = erster auf den Suchausdruck passender String, hier: "au"
...
ergebnis[1] = String, der auf den Ausdruck in der 1. Klammer passt, hier: (au)="au"
erbnis[2] = String, der auf den Ausdruck in der 2.Klammer passt, hier ist keine 2. Klammer im Ausdruck vorhanden, also undefinded.
...und so weiter, werden neue Elemente an das Array angehängt, wenn weitere Klammern im Ausdruck vorhanden waren.
Dein Beispiel gibt also nur ergebnis[0] und ergebnis[1] zurück.
Wenn Du Deinen Ausdruck so erweiterst: (au)(er), dann bekommst du 3 als Ergebnis
Und damit sich meine authistischen Bemühungen auch mal für die Welt da draußen bezahlt machen, kannst Du ja mal auf meine JS/DHTMl-Seite kucken:
http://dhtml.andreas-lindig.de/javascript/regExp/regExp.htm#a_12
Gruß, Andreas
Ey klasse, doch noch eine Antwort ... :-)
okok, ich habs nicht verstanden ... ich werde in Zukunft einen grossen Bogen um reg.-Ausdrücke machen ... obwohl es sich sehr spannend liest ...
Gruss
Amit
okok, ich habs nicht verstanden...
kommt bei mir auch öfters vor ;)
ich werde in Zukunft einen grossen Bogen um reg.-Ausdrücke machen...
würde ich nicht machen. Ich brauche sie sehr oft. In dem JavaScript-Buch von Stefan Koch ist das sehr schön erklärt. ...und auf meiner Seite natürlich ,)
obwohl es sich sehr spannend liest...
ist es auch. Sie sollen langsam sein, aber dafür sind sie eben sehr vielseitig. Bei Problemen kannst Du ja hier immer fragen :)
Gruß, Andreas