![]() |
Text in Memo finden
Hallo an alle,
ich möchte gerne den Text zwischen <title> und </title> in einem Memo finden, und als Caption angezeigt bekommen. Nu das Problem, ich weis nicht, wie ich gerade dieses Stück aus dem Memo holen soll. Kann mir wer Hilfe leisten? |
Re: Text in Memo finden
Pos, Copy
|
Re: Text in Memo finden
Leider kann ich mir daraus keinen Reim stricken :?
|
Re: Text in Memo finden
Mit Pos kannst du Position eines Strings in einem anderen finden (Beginn Anfang-Tag, Beginn-Ende-Tag)und mit Copy kannst du einen teil eines Strings ausschneiden (von Beginn-Anfangtag+Länge Anfang-Tag bis Beginn Endetag-1)
|
Re: Text in Memo finden
Der Text in Memos ist in Lines:TStrings untergebracht. Iteriere durch die Lines und führe auf jeden String ein pos aus.
Sherlock |
Re: Text in Memo finden
Hab was gefunden, das das ist zu spezifisch:
Delphi-Quellcode:
denn dieses (text, 8, 8);
var text, wort: String;
begin text := 'Das ist wirklich toll!'; wort := Copy(text, 8, 8); // wort enthält nun "wirklich" .. das <title> steht ja auch nich immer ab der selben stelle. |
Re: Text in Memo finden
Delphi-Quellcode:
function Between(Tag,Tag2,Text:String):String;
begin Delete(Text,1,Pos(Tag,Text)); Delete(Text,Pos(Tag2,Text),Length(Text)); Result:=Text; end; |
Re: Text in Memo finden
Mh, ok,
Delphi-Quellcode:
das sagt mir leider nicht viel, ohne zusatz von worten.
function Between(Tag,Tag2,Text:String):String;
begin Delete(Text,1,Pos(Tag,Text)); Delete(Text,Pos(Tag2,Text),Length(Text)); Result:=Text; end; tag und tag2 stellen wohl <title> und </title> dar, wenn ja, wie sage ich der funktion denn, dass es diese beiden tags sind? denn:
Delphi-Quellcode:
funktioniert nicht.
function Between(<title>,</title>,Text:String):String;
begin Delete(Text,1,Pos(<title>,Text)); Delete(Text,Pos(</title>,Text),Length(Text)); Result:=Text; end; |
Re: Text in Memo finden
Delphi-Quellcode:
Caption:=Between('>','<',Memo1.Text);
|
Re: Text in Memo finden
Zitat:
Delphi-Quellcode:
Verwendung der Funktion:
function Between(Tag1, Tag2, Text: String): String;
begin Delete(Text,1,Pos(Tag1,Text)+length(Tag1)-1); //Änderung hier! Delete(Text,Pos(Tag2,Text),Length(Text)); Result:=Text; end;
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin Caption:=Between('<title>','</title>',Memo1.Text); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:29 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz