![]() |
substring aus string nehmen
Salve zusammen,
Ich hab da ein kleines Problem, und zwar würde ich gerne aus einer Listbox einen Substring herausnehmen. Hab schon alle Threads durchgelesen zu diesem Thema bin aber trotzdem nicht ganz schlüssig geworden. Also ein Eintrag in meiner List sieht so aus
Code:
12:11:23.123 : Bla testtesttest : bla bla bla bla bla bla bla bla
13:12:11.234 : testtesttest : bla bla bla bla bla bla bla bla Nun würde ich gerne 1. wenn vor dem testtesttest ein Bla steht das 'Bla' und das 'testtesttest' einzeln rausnehmen und 2. nur das 'testtesttest' rausnehmen, wenn kein 'Bla dort steht Bis anhin habe ich das wie folgt gemacht. Auf diese weise wird aber wenn vor und nach dem 'testtesttest' die gleiche zeichenkette folgt (' : ') das 'testtesttest nicht rausgenommen. Das ist genau mein Problem.
Code:
nPos := pos(' : ', FlbOutput.Items[nIdx]);
nPos := nPos + 3; // get end-position of Class nPos1 := pos(' : ', FlbOutput.Items[nIdx]); nPos1 := nPos1 - nPos; Temp := Copy(FlbOutput.Items[nIdx],nPos,nPos1); Temp1 := copy(Temp, 0,3); if ((Temp1 = 'Bla') OR (Temp1 = 'BLA') OR (Temp1 = 'bla')) then Temp := copy(Temp, 5, nPos1); if((FcbClass.Items.IndexOf(Temp) = -1) AND (Temp <> '')) then FcbClass.Items.add(Temp); end; Besten Dank schon im Voraus Flinn |
Re: substring aus string nehmen
Möchtest du den Text in dieser Spalte immer entfernen? Wenn ja kannst du doch einfach Zwei Copys machen:
Delphi-Quellcode:
Da es ja scheinbar feste breite hat, sollte es doch damit kein Problem geben.
Text:=Copy(OldText,1,10)+' '+Copy(OldText,20,30);
|
Re: substring aus string nehmen
der 'testtesttest'- string kann ganz unterschiedliche längen haben. Das ist das Problem,
wie kriege ich das Ende des strings heraus?? Gibt es nicht so etwas wie die Position vom ersten ' : ' bis zum zweiten ' : '?? Wenn ich den String zwischen den beiden ' : ' herausbekommen würde wäre mein Problem gelöst. |
Re: substring aus string nehmen
Grüß Gott zusammen,
Mit POS kannst du nach dem Doppelpunkt suchen. Pos liefert immer die Position des ersten Doppelpunktes zurück. Wenn du den ersten gefunden hast änderst du diesen in ein anderes signifikantes Zeichen oder löscht den ersten Teil und suchst dann wieder mit Pos. Nun wird dir der nächste angezeigt und du kommst zu der Länge zwischen den beiden Doppelpunkten. |
Re: substring aus string nehmen
|
Re: substring aus string nehmen
Dank schön, jezt klppts!!
Nur das mit dem PosEx hab ich nicht gefunden, hab aber auch nicht weiter gesucht nachdem es die Delphi-Hilfe nicht gefunden hat... ciao ciao |
Re: substring aus string nehmen
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:35 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-2025 by Thomas Breitkreuz