matching mit Variable
mormel
- javascript
0 timothy0 peterS.0 Danke!
mormel
Hallo,
ich möchte aus einer Zeichenkette einen Teil ersetzen.
Der zu ersetzende Teil steht in einer Variablen. z.B.
var etwas = "Text";
var string = "Hier ist etwas Text";
string = string.replace(/etwas/,"");
Ergebnis: "Hier ist Text"
Herauskommen sollte aber : "Hier ist etwas". Wie kann ich bei replace
(das gleiche Problem tritt auch bei match auf) den Inhalt einer
Variablen aus einem String ersetzen?
danke
mormel
var etwas = "Text";
var string = "Hier ist etwas Text";
string = string.replace(/etwas/,"");Ergebnis: "Hier ist Text"
var etwas = new RegExp("Text");
var string = "Hier ist etwas Text";
string = string.replace(etwas,"");
Gruß
Timothy
gruss mormel,
var etwas = "Text";
var string = "Hier ist etwas Text";
string = string.replace(/etwas/,"");Ergebnis: "Hier ist Text"
jup - das ist auch richtig so, denn:
mit [ string.replace(/etwas/,""); ]
teilst Du der methode [ replace ] mit,
dass alles, worauf der regulaere
ausdruck /etwas/ passt, durch ""
ersetzt werden soll - es wird also
nach "etwas" gesucht und nicht nach
"Text" was in Deinem bsp. durch die
variable [ etwas ] repraesentiert wird;
schreibe also:
var etwas = new RegExp("Text","g");
// g steht dabei fuer global - suche ueber den gesamten string
// die kurzschreibweise fuer die erste zeile sieht so aus:
// var etwas = /Text/g;
var string = "Hier ist etwas Text";
string = string.replace(etwas,"");
Herauskommen sollte aber : "Hier ist etwas".
heraus kommt dann aber: "Hier ist etwas "
------------------------------------------^
http://selfhtml.teamone.de/javascript/objekte/regexp.htm
http://selfhtml.teamone.de/javascript/objekte/string.htm#replace
by(t)e by(t)e - peterS. - pseliger@gmx.net
Hallo,
Danke euch beiden, funktioniert!
mormel