Verweis: | ErsetzeUmlaut |
Uses: | StrUtils |
Eingabe: | Text(String) |
Ausgabe: | Text(String) |
Funktion: | Die Funktionen konvertieren zeichen in eine HTML-Kodierung und die andere wieder zurück. |
Die Funktion Str2HTML konvertiert einen String mit verschiedenen Sonderzeichen in eine HTML-Kodierung. Dies bvei älteren Browsern nötig. Dies gilt auch für den in Lazarus mitgelieferten HTML-Viewer mit dem man sehr gut eine Offline – Hilfe verwirklichen kann. Für moderne Browser ist dies Funktion eigentlich nicht mehr nötig. Wenn Sie mit der Darstellung Probleme haben, dann haben Sie die UTF8-Angabe im Meta-Tag vergessen. Das sähe dann so aus:

<meta http-equiv="content-type" content="text/html; charset=utf-8">
Hilft aber wie geschrieben nicht immer. Deswegen also diese Funktion, die, wie wir meinen kurz und schmerzlos ist.
WICHTIG! Bitte benutzen Sie hier ausnahmsweise mal nicht den Kopier – Button. Der Quelltext wird von dem Kopier-Tool falsch interpretiert.
function Str2HTML(const T: string): string;
//Vergessen Sie nicht die Unit StrUtils einzubinden
const
Zeichen: array[1..15] of string =
('ä', 'Ä', 'ö', 'Ö', 'ü', 'Ü', 'ß', '²', '³', '&', '|',
'§', '°', '€', ' ');
ZeiHTML: array[1..15] of string =
('ä', 'Ä', 'ö', 'Ö',
'ü', 'Ü', 'ß', '²', '³', '&',
'¦', '§', '°', '€', ' ');
begin
Result := StringsReplace(T, Zeichen, ZeiHTML, [rfReplaceAll]);
end;
Hier sieht man sehr schön, wie leistungsfähig der Befehl „StringsReplace“ ist. Der im Netz bedauerlicherweise, zu Unrecht ein Schattendasein führt. Aufgerufen wird die Funktion „Str2HTML“ so:
Aufruf
Vorbereitung: Erstellen sie eine IDE Anwendung und ziehen Sie einen TButton und 2 TEdit-Komponenten auf die Form. Binden Sie die Unit StrUtils mit der Uses-Klausel in die Anwendung ein. Doppelklicken sie auf den Button und ersetzen Sie das Ereignis durch folgenden Quelltext:
procedure TForm1.Button1Click(Sender: TObject);
begin
Edit1.Text := Str2HTML(Edit2.Text);
end;
Wenn wir in Edit1 was eintippen und dann auf den Button klicken, dann haben wir in Edit2 den übersetzten Text. Das könnte so aussehen:

HTML2Str
WICHTIG! Bitte benutzen Sie hier ausnahmsweise mal nicht den Kopier – Button. Der Quelltext wird von dem Kopier-Tool falsch interpretiert.
function HTML2Str(const T: string): string;
//Vergessen Sie nicht die Unit StrUtils einzubinden
const
Zeichen: array[1..15] of string =
('ä', 'Ä', 'ö', 'Ö', 'ü', 'Ü', 'ß', '²', '³', '&', '|',
'§', '°', '€', ' ');
ZeiHTML: array[1..15] of string =
('ä', 'Ä', 'ö', 'Ö',
'ü', 'Ü', 'ß', '²', '³', '&',
'¦', '§', '°', '€', ' ');
begin
Result := StringsReplace(T, ZeiHTML, Zeichen, [rfReplaceAll]);
end;
Jetzt noch mal die Funktion in die Gegenrichtung. Dies könnten sie gebrauchen, wenn Sie eine alte HTML – Seite in einen lesbaren Text konvertieren wollen. Aber wir mussten schon lange suchen bis wir noch einen Text gefunden haben. (ca. 20 Jahre zurück.)
Aufruf
Vorbereitung: Erstellen sie eine IDE Anwendung und ziehen Sie einen TButton und 2 TEdit-Komponenten auf die Form. Binden Sie die Unit StrUtils mit der Uses-Klausel in die Anwendung ein. Doppelklicken sie auf den Button und ersetzen Sie das Ereignis durch folgenden Quelltext:
procedure TForm1.Button1Click(Sender: TObject);
begin
Edit1.Text := HTML2Str(Edit2.Text);
end;