![]() |
String zerlegen
Hallo ich ab mal wieder eine Frage ich habe folgenden String
texttextext;AA;BB;CC;DDDD;EEE aus diesem String möchte ich nun die Werte AA BB CC DDDD EEE jeweils als einen Eintrag in einer Stringlist haben. Habe mir schon etwas gedanken gemacht. Könnte das ganze durch copy immer mehr verkürzen und nach den ; suchen. Aber vllt. gibt es ja noch eine einfachere Variante hat jemand eine Idee? |
Re: String zerlegen
Hallo,
so kannst du die durch Semikolons getrennten Wörter in eine eigene Zeile bekommen:
Delphi-Quellcode:
Nach welchen Kriterien soll denn nun aussortiert werden ("texttextext" soll ja weg)?
var
sl: TStringList; begin // ... sl.Delimiter := ';'; sl.DelimitedText := 'texttextext;AA;BB;CC;DDDD;EEE'; ShowMessage(sl.Text); //... end; |
Re: String zerlegen
genau diese test ist ein vom programm erzeugter text den ich ignorieren will...
alles andere sind Strings die von Anwenderseite eingefügt werden. das heisst den ersten wert den ich bekomme kann ich ignorieren da dieser immer gleich ist |
Re: String zerlegen
Dann würde ich es so machen:
Delphi-Quellcode:
//...
sl.Delimiter := ';'; sl.DelimitedText := 'texttextext;AA;BB;CC;DDDD;EEE'; sl.Delete(0); //... |
Re: String zerlegen
jepp genauso hab ichs jetzt gemacht danke für die schnelle hilfe
|
Re: String zerlegen
so jetzt ergibt sich für mich gleich das nächste Problem .
ICh habe 3 Stringlisten welche ich auf genannte Weise gefükllt habe nun möchte ich bei jedem Wert aus jeder Stringliste vergleichen ob dieser auch in den anderen vorhanden ist und dementsprechend eine Checkbox checken bzw. das Häkcheng rau machen wenn sie nur in einem teil vorhanden ist. Wie geht das am schnellsten muss ich wirklich mit for schleifen jeden wert in jeder Schleife durchgehen und die anderen durchsuchen oder gibt es hier eine einfachere Variante? |
Re: String zerlegen
Hallo,
schaue dir hierzu die Eigenschaft ![]()
Delphi-Quellcode:
bzw:
if (sl1.IndexOf('bla') > -1) and (sl2.IndexOf('bla') > -1) then
// in beiden enthalten
Delphi-Quellcode:
oder wie auch immer.
CheckBox.Checked := (sl1.IndexOf('bla') > -1) and (sl2.IndexOf('bla') > -1);
Doch das gehört eigentlich nicht zur Ausgangsfrage. |
Re: String zerlegen
|
Re: String zerlegen
Zitat:
|
Re: String zerlegen
So dann noch eine Letzte frage für den heutigen tag wie kann ich die Checkbox ausgrauen jeodch nciht deaktivieren.
Denke mald as kennen alle wenn ne Bedinung nur teilweise erfüllt ist das der hacken so gräulich angezeigt wird. Muss ich da speziell die Farbe ändern oder kann mand as über irgendeine Eigenschaft machen? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:53 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