Hochkommata maskieren
obiwan1973
- javascript
Hallo zusammen,
ich möchte mit JavaScript einen String in ein Textfeld schreiben.
Der String enthält Wortfetzen, die ich vorher ersetzen will, und zwar
Wortblock1 bspw. "Auto" > ersetzen durch einfaches Hochkomma
Wortblock2 bspw. "Haus" > ersetzen durch doppeltes Hochkomma
Wie mache ich das?
Die Hochkommata sollen wirklich im Textfeld lesbar sein.
Gruß
Thomas
Die Hochkommata sollen wirklich im Textfeld lesbar sein.
Das Maskierungszeichen in JavaScript ist der Backslash \
alert("Er hat \"Auto\" gesagt");
oder aber einfach die Quotes umdrehen:
alert('Er hat "Auto" gesagt');
@@suit:
nuqneH
Das Maskierungszeichen in JavaScript ist der Backslash \
alert("Er hat \"Auto\" gesagt");
oder aber einfach die Quotes umdrehen:
alert('Er hat "Auto" gesagt');
Protip: Probleme mit der Maskierung von " und ' können gar nicht auftreten, wenn man diese Zeichen nicht im Text verwendet. Wo sie ja eigentlich auch gar nichts zu suchen haben.
Doppelte Anführungszeichen sind im Deutschen „“ (oder »«) im Englischen “”, in manch anderen Sprachen „”, in anderen « » (mit Leerzeichen). Einfache entsprechend ‚‘ (›‹), ‘’, ‚’ und ‹ ›. Apostroph ist ’.
Das sieht nicht nur visuell besser aus, sondern schafft einem auch die Maskierungsrobleme vom Hals:
alert("Er hat „Auto“ gesagt");
Qapla'
Hallo Gunnar,
ich kann mir das leider nicht aussuchen, ist nicht mein Content. Das einfache und das doppelte Anführungszeichen sind Pflicht, das ist vom Chef vorgegeben. Also fang keine Sinndiskussion an.
Das hilft mir nicht.
Gruß
Thomas
@@obiwan1973:
nuqneH
Also fang keine Sinndiskussion an.
Meine Antwort bezog sich auf suits Posting, nicht auf dein Problem.
Welches suit auch missverstanden hat, glaub ich.
Qapla'
Hallo suit,
das klappt leider nicht. Ich habe es auf zwei Wegen versucht:
Variante 1:
var var_titel = document.getElementById('input_titel').value;
//
var_titel = var_titel.replace(/Auto/g, "\'");
var_titel = var_titel.replace(/Haus/g, '\"');
Variante 2:
var var_titel = document.getElementById('input_titel').value;
//
var_titel = var_titel.replace(/Auto/g, "'");
var_titel = var_titel.replace(/Haus/g, '"');
Beides geht nicht.
@@obiwan1973:
nuqneH
Beides geht nicht.
Doch, beides geht. (Heißt: Das Escapen mit \ ist nicht nötig.)
Bist du sicher, dass in var_titel vor dem replace das richtige drinsteht?
Bist du sicher, dass du var_titel nach dem replace richtig zur Ausgabe bringst?
ich möchte mit JavaScript einen String in ein Textfeld schreiben.
Wie tust du das?
Qapla'
Hallo,
var_titel = var_titel.replace(/Auto/g, "'");
Dies ersetzt das Wort »Auto« durch ein Hochkomma.
Beispiel:
Ich fahre mit dem Auto nach Buxtehude.
wird zu
Ich fahre mit dem ' nach Buxtehude.
Ist es das, was du willst?
Beschreibe bitte einmal beispielhaft, wie die Eingabe aussieht und wie die Ausgabe aussehen soll.
Grüße,
Mathias