replace(variable, variable) möglich?
Felix Riesterer
- javascript
Liebe Selfer,
ich scheitere an einer selbstgebastelten Funktion. Diese Funktion soll eine Angabe in einem <form> überprüfen, und beim Auftreten eines Namenskürzels, dieses ersetzen. Damit nicht alle möglichen Stellen ersetzt werden, darf nur das erste "Wort" (also sowas: /\bKürzel\b/) bei Bedarf ersetzt werden. Meine Funktion sieht so aus:
function pruefe_kuerzel(angaben)
{
var namensteil = angaben.substr(0, angaben.indexOf(" ")); // erstes "Wort" isolieren
var voller_name = namenskuerzel(namensteil); // vollen Namen holen
angaben.replace(namensteil, voller_name);
return angaben;
}
Die Funktion "namenskuerzel()" funktioniert einwandfrei. Mein Problem ist die Anweisung
angaben.replace(namensteil, voller_name);
Anscheinend kann ich keinen regulären Ausdruck per Variable übergeben, da meine Variablen alle Strings enthalten. Es scheint ein solcher Ausdruck auch kein String zu sein, da er _ohne_ Anführungszeichen notiert wird...
Was kann ich tun, damit meine Anweisung mit der Variable "namensteil" etwas anfangen kann?
Liebe Grüße aus Ellwangen,
Felix Riesterer.
Anscheinend kann ich keinen regulären Ausdruck per Variable übergeben, da meine Variablen alle Strings enthalten. Es scheint ein solcher Ausdruck auch kein String zu sein, da er _ohne_ Anführungszeichen notiert wird...
Was kann ich tun, damit meine Anweisung mit der Variable "namensteil" etwas anfangen kann?
Also bei mir funktioniert:
var a = 'ein string, so';
var b = 'string';
var c = 'neu';
var n = a.replace(b, c);
alert(n);
Struppi.
Liebe Selfer,
hab's selber gelöst. *stolz*
angaben.replace(namensteil, voller_name);
Diese Anweisung tut nix! Hehe, weil das Ergebnis keiner Variablen zugewiesen wird, ist die Ausgabe meines Scriptes unverändert! Es muss heißen:
angaben = angaben.replace(namensteil, voller_name);
Dann tut's so, wie es soll.
Lieber Struppi, das haben wir wohl zunächst beide übersehen! ;-)
Liebe Grüße aus Ellwangen,
Felix Riesterer.