Dieter Raber: Verwendung eines Arrays?

Beitrag lesen

Hallo Sascha,

ein Objekt waere hier die einfachere Loesung.

  
var eingabe = document.case_inhalt.v1.value;  
var verzeichnis = {  
  sgdh: 'Sehr geehrte Damen und Herren',  
  mfg: 'Mit freundlichen Gruessen'  
  ste: 'Sieben traege Esel' // dieses (zugebenermassen daemliche) Beispiel beachten  
}  
  
for (var abkuerzung in verzeichnis) {  
  eingabe = eingabe.replace(abkuerzung,  verzeichnis[abkuerzung]);  
}  
alert(eingabe)  

Das Risiko ist, dass wenn deine Abkuerzungen in 'eingabe' als gewollter Text vorkommen, diese ebenfalls uebersetzt werden.
Beispiel:

eingabe = "Mister Knister" // enthaelt zweimal 'ste' aus dem Beispielobjekt und wird somit zu wird zu MiSieben traege Eselr KniSieben traege Eselr

Besser waere also ein eindeutiger Begrenzer, sowas wie {sdgh}, wenn du sicher sein kannst, dass dein Text niemals '{' und '}' enthaelt

Gruss

Dieter