Zwischen

Verweis: NZwischen
Uses: System
Eingabe: Anfang,Ende(Integer),Text(String)
Ausgabe: Text(String)
Funktion: Gibt den Text Zwischen den Anfangs-String und dem Ende-String zurück.

Da es immer wieder vorkommt, dass wir einen Teil aus einem Text herauslösen wollen, welcher zwischen zwei Strings oder auch Zeichen steht haben wir folgende Funktion geschrieben.

function Zwischen(Anfang, Ende, Text: shortstring): shortstring;
var
  Position: integer;
  Teil: string;
begin
  Result := '';
  Position := Pos(Anfang, Text);
  if Position = 0 then Exit;
  Teil := Copy(Text, Position + length(Anfang), length(Text));
  Position := Pos(Ende, Teil);
  if Position = 0 then Exit;
  Delete(Teil, Position, length(Teil));
  Result := Teil;
end;

Hier wird ein String zurück gegeben, wenn das Anfangs-Zeichen oder der Anfangs-String vorhanden und Ende-Zeichen oder String vorhanden ist. Die Wörter oder Zeichen der Begrenzung werden nicht wiedergegeben.Die Funktion ist auf 255 Zeichen durch Shortstring begrenzt, wer will kann das durch das Wort String ersetzen. Sollte Der Text nicht gefunden werden, dann gebt es einen Leerstring zurück. Deswegen solte der Aufruf so erfolgen:

Aufruf 1

Vorbereitung: Erstellen sie eine IDE Anwendung und ziehen Sie einen TButton und ein TEdit auf die Form. Doppelklicken sie auf den Button und ersetzen Sie das Ereignis durch folgenden Quelltext:

procedure TForm1.Button1Click(Sender: TObject);
const
  HTMLText = '<p><a href="http://www.w3.org/"><img alt="W3C" height="48"'
    + 'src="http://www.w3.org/Icons/w3c_home" width="72"></a></p>';
begin
  Edit1.Text := Zwischen('href="', '/"', HTMLText);
  if Edit1.Text = '' then
    ShowMessage('Ich habe den Text nicht gefunden.');
end;

In dem Beispiel wird im Html-Code eine Internet-Adresse extrahiert. Das Meldungsfenster wegen „Text nicht gefunden“ ist hier wie immer nur symbolisch zu sehen. Diese Meldung erscheint dann, wenn entweder Anfangs oder Endezeichen nicht gefunden wurden. Die übergeben Zeichen sind Casesensitive, es wird also die Groß- Kleinschreibung beachtet. Diese Funktion kann auch Umlaute. Wenn Sie nicht das erste Vorkommen wollen, dann brauchen Sie NZwischen.