mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Di 16.04.2024 11:43 Benutzername: Passwort: Auto-Login

Thema: Umlaute und Zeichen ersetzen vom 23.04.2008


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Multimedia -> Umlaute und Zeichen ersetzen
Seite: 1, 2  Weiter
Autor Nachricht
Flipkick
Threadersteller

Dabei seit: 15.05.2003
Ort: Frankfurt am Main
Alter: 41
Geschlecht: Männlich
Verfasst Mi 23.04.2008 10:46
Titel

Umlaute und Zeichen ersetzen

Antworten mit Zitat Zum Seitenanfang

Hallo,

ich habe heir mal diese nette Script zum ersetzen der Zeichen. Ich würde es aber gerne so umschreiben, dass ich nur den String angeben kann und ersetzt mir alle Umlaute bei "ü" in ue, ein "-" in "_", ein "ß" wegen mir in ein "ss" usw, kann mir da jmd helfen es umzuschreiben weil ich da keinen richtigen Ansatz finde.

Code:

umlaute_falsch = "Ich hätte gerne die Umlätsche hier ersetzt - geht das - ?"

// Funktion zum ersetzen von Zeichen
String.prototype.ersetzen = function(suchstr, ersetzstr) {
   //hier soller nicht nur "-" in "_" ersetzen, sonder auch alle anderen Zeichen die ich hier eingebe nach meine Vorgaben
   
   return this.split(suchstr).join(ersetzstr);
};

// Variable ist kleingeschrieben, anstatt - ein _ und ist ein string
umlaute_ok = ((umlaute_falsch.toString()).toLowerCase()).ersetzen("-", "_");

// das soll rasukommen
//umlaute_ok = "Ich haette gerne die Umlaetsche hier ersetzt _ geht das _ ?"



ich will nicht nur "-" in "_" ersetzen sondern jedem Zeichen möchte ich gerne eine eigene Ersetzung vorgeben, oder gibts da eine besser Lösung als dieses Script ?

Danke Seb
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
phihochzwei
Moderator

Dabei seit: 08.06.2006
Ort: Mülheim an der Ruhr
Alter: 46
Geschlecht: Männlich
Verfasst Mi 23.04.2008 10:52
Titel

Antworten mit Zitat Zum Seitenanfang

ich würd das so eigentlich lassen, nur würd ich anstelle der beiden Parameter die du reingibt´s ein Array reingeben, das Du dann mit einer Schleife durchgehen kannst, um alle gewünschten Zeichen zu ersetzen
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
Flipkick
Threadersteller

Dabei seit: 15.05.2003
Ort: Frankfurt am Main
Alter: 41
Geschlecht: Männlich
Verfasst Mi 23.04.2008 11:07
Titel

Antworten mit Zitat Zum Seitenanfang

hmm ok das habe ich mal versucht, aber was macht er genau er startet 1x das Script, durchläuft das Array und ersetzt ALLE Umlaute ???

bzw das funztz noch nicht wirklich:

Code:
umlaute_falsch = "Ich hätte gerne die Umlätsche hier ersetzt - geht das - ?"

// Funktion zum ersetzen von Zeichen
String.prototype.ersetzen = function() {
   
   Arr_Umlaute_alt = ["-", "ä", "ü"];
   Arr_Umlaute_neu = ["_", "ae", "ue"];
   
   for(i = 0; i < Arr_Umlaute.length; i++){
      return this.split(Arr_Umlaute_alt[i]).join(Arr_Umlaute_neu[i]);
      }
   
};

umlaute_ok = ((umlaute_falsch.toString()).toLowerCase()).ersetzen();
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
phihochzwei
Moderator

Dabei seit: 08.06.2006
Ort: Mülheim an der Ruhr
Alter: 46
Geschlecht: Männlich
Verfasst Mi 23.04.2008 11:12
Titel

Antworten mit Zitat Zum Seitenanfang

Ersetz mal dein Arr_Umlaute.length gegen Arr_Umlaute_alt.length

Zuletzt bearbeitet von phihochzwei am Mi 23.04.2008 11:15, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Flipkick
Threadersteller

Dabei seit: 15.05.2003
Ort: Frankfurt am Main
Alter: 41
Geschlecht: Männlich
Verfasst Mi 23.04.2008 11:13
Titel

Antworten mit Zitat Zum Seitenanfang

ahh habs scho

Code:

umlaute_falsch = "Ich hätte gerne die Umlätsche hier ersetzt - geht das - ?"

// Funktion zum ersetzen von Zeichen
String.prototype.ersetzen = function() {
   
   Arr_Umlaute_alt = ["ä", "-", "ü"];
   Arr_Umlaute_neu = ["ae", "_", "ue"];
   
   for(i = 0; i < Arr_Umlaute_alt.length; i++){
      this = this.split(Arr_Umlaute_alt[i]).join(Arr_Umlaute_neu[i]);
      }
   return this;   

};

umlaute_ok = ((umlaute_falsch.toString()).toLowerCase()).ersetzen();

trace(umlaute_ok);



  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
phihochzwei
Moderator

Dabei seit: 08.06.2006
Ort: Mülheim an der Ruhr
Alter: 46
Geschlecht: Männlich
Verfasst Mi 23.04.2008 11:15
Titel

Antworten mit Zitat Zum Seitenanfang

zu langsam Grins
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Flipkick
Threadersteller

Dabei seit: 15.05.2003
Ort: Frankfurt am Main
Alter: 41
Geschlecht: Männlich
Verfasst Mi 23.04.2008 11:23
Titel

Antworten mit Zitat Zum Seitenanfang

hehe.....amer so ein gerelles script gibts dafür net oder einfach en funktion "quasi alle Umaute programiergerecht zu machen" ? Lächel wär wohl auch zu sche
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Flipkick
Threadersteller

Dabei seit: 15.05.2003
Ort: Frankfurt am Main
Alter: 41
Geschlecht: Männlich
Verfasst Mi 23.04.2008 11:57
Titel

Antworten mit Zitat Zum Seitenanfang

jo sauber, nur ein Problem hab ich nun noch, ich wollte eigentlich die Attribute in meiner XML ersetzen.

"xmlData.attributes.name" hab ich Thüringen drin stehen, jedoch hab ich

Code:
<ldgb id="8" name="Thüringen - Ost" gesamtanzahl="112534"/>


bekomme als trace(); nur den namen und das Ü als Kästchen raus. Jetzt die Frage funktionieren Umlaute als Attributes nihcht oder liegt es an UTF 8 oder was ? wenn ichs in die Klammer schreibe gehs ?!?!
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
 
Ähnliche Themen Nur best. Zeichen und Umlaute zulassen
htaccess - Zeichen ersetzen
ID bringt erstes Zeichen nicht beim Ersetzen einer Markierun
PHP Umlaute
PHP Kontaktformular und Umlaute
html umlaute
Neues Thema eröffnen   Neue Antwort erstellen Seite: 1, 2  Weiter
MGi Foren-Übersicht -> Multimedia


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.