split() mit mehreren Parametern?
Bad Suliban
- javascript
0 Utz0 Sven Rautenberg0 Antje Hofmann
Hi,
offenbar ein noch nicht da gewesenes Problem, zumindest hat die Suche nichts ergeben.
Ich habe z.B. folgenden String: "1h23m45s"
Ich kann den aufteilen mit split("h").
Dann bekomm ich ein Array mit "1" und "23m45s". Wenn ich den String aber ganz aufteilen will (also in "1" "23" und "45") müsst ich mehrmals split() ausführen. Kann man bei split mehrere Paramenter verbinden?
So im Sinne von split("h","m","s") <- wobei ich diese Variante bereits ausprobiert habe, sie funzt nicht :-\
MfG, ABS
Hi,
in so nem Fall musst Du AFAIK tatsächlich zwei Schritte machen.
1. Mit replace() (http://selfhtml.teamone.de/javascript/objekte/string.htm#replace) und zuhilfenahme einse Mini-Regulären Ausdrucks (für Buchstaben) (vgl. http://selfhtml.teamone.de/javascript/objekte/regexp.htm) die Buchstabe durch ein eindeutiges Trennzeichn ersetzen.
2. Auf den so bearbeiteten String dann split() anwenden.
Grüße,
Utz
Ach thooo geeet dat :-)
Hab mir schon was in diese Richtung mit "Zeichen ersetzen" gedacht.
Danke.
MfG, ABS
Aloha!
Ich habe z.B. folgenden String: "1h23m45s"
Ich kann den aufteilen mit split("h").
Dann bekomm ich ein Array mit "1" und "23m45s". Wenn ich den String aber ganz aufteilen will (also in "1" "23" und "45") müsst ich mehrmals split() ausführen. Kann man bei split mehrere Paramenter verbinden?
So im Sinne von split("h","m","s") <- wobei ich diese Variante bereits ausprobiert habe, sie funzt nicht :-\
split() ist dann gut, wenn du _ein_ eindeutiges Trennzeichen hast und die Zwischenräume zwischen diesem Zeichen trennen und als Werte verarbeiten willst.
Für deine Anwendung empfiehlt sich entweder substr(), wenn du sicher sagen kannst, dass dein String feste Längen hat, oder du nimmst einen regulären Ausdruck, der dir direkt die Teilstrings liefern kann. Du benötigst split() in keinem Fall.
- Sven Rautenberg
Hallo
offenbar ein noch nicht da gewesenes Problem, zumindest hat die Suche nichts ergeben.
Ich habe z.B. folgenden String: "1h23m45s"
Kann man bei split mehrere Paramenter verbinden?
Ja, split kann auch reguläre Ausdrücke verarbeiten.
x="1h23m45s";
y=x.split(/[hms]/);
for (i in y)
document.write(y[i],"<br>");
Einziger Nachteil:
Opera kann das nicht. Sofern du auch für diesen Browser schreibst mußt du Utz seine Methode anwenden.
Viele Grüße
Antje