AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Ersetzen von Umlauten bei groß geschriebenen Wörtern
Thema durchsuchen
Ansicht
Themen-Optionen

Ersetzen von Umlauten bei groß geschriebenen Wörtern

Ein Thema von Ackerjan · begonnen am 2. Feb 2015 · letzter Beitrag vom 3. Feb 2015
 
Ackerjan

Registriert seit: 4. Jun 2007
Ort: Potsdam
17 Beiträge
 
Delphi 2009 Enterprise
 
#1

Ersetzen von Umlauten bei groß geschriebenen Wörtern

  Alt 2. Feb 2015, 10:24
Ich suche nach dem richtigen Ansatz für das folgende Problem. Ich habe einen Text, in dem bewusst einige Wörter in Großbuchstaben geschrieben werden. Nun müssen die Umlaute aus dem Text ersetzt werden. Dafür verwende ich die angegebene Funktion.

In Österreich wird kein SÜßHOLZ hergestellt.

Code:
function OhneUmlaute(_string: String): String;
begin
    _string := ansiReplaceStr(_string, 'ä', 'ae');
    _string := ansiReplaceStr(_string, 'ü', 'ue');
    _string := ansiReplaceStr(_string, 'ö', 'oe');
    _string := ansiReplaceStr(_string, 'Ä', 'Ae');
    _string := ansiReplaceStr(_string, 'Ü', 'Ue');
    _string := ansiReplaceStr(_string, 'Ö', 'Oe');
    _string := ansiReplaceStr(_string, 'ß', 'ss');
    Result := _string;
end;
In Oesterreich wird kein SUessHOLZ hergestellt.

Gewünscht wird allerdings der folgende Text

In Oesterreich wird kein SUESSHOLZ hergestellt.

Mein erster Ansatz wäre, den Text von vorne nach hinten durchzugehen und für Ä,Ü,Ö,ß zu prüfen ob das Zeichen davor Groß ist, dann ersetze zu AE,UE,OE,SS. Ist der Buchstabe davor nicht vorhanden oder ist es kein Buchstabe dann prüfe den Buchstaben danach und ersetzte entsprechend.

Hat da jemand einen besseren Ansatz?
Vielleicht mit regulären Ausdrücken?
Gibt es da schon was?
Jan
Niemals aufgeben, niemals kapitulieren! - galaxy quest
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:01 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz