![]() |
Hilfe zur Stringlist
Hi Leute ich habe eine Frage zu Stringlisten und zwar ich eine Stringliste und da heißt ein Wort
z.B:"Vorraussetzung" und ich habe keine Ahnung wo dieses in meiner Stringlist auftaucht und würde aber gerne danach ein Wort beispielsweise "test" einfügen. Jetzt die Frage ist das einfach möglich? Ich finde leider selbst keine Lösung. Mfg Manu |
Re: Hilfe zur Stringlist
den Ausdruck suchen und finden sollte mit einer Schleife gehen.
for i:=1 To sl.count dO begin //vergleiche sl[i] mit gesuchtem Ausdruck end; Du kannst mit insert etwas in die Stringliste einfügen Angenommen der Ausdruck befindet sich an der Position i dann kannst Du mit sl.insert(i+1,'...') etwas dahinter einfügen. Grüße Klaus |
Re: Hilfe zur Stringlist
Zum Suchen von Einträgen kannst du
Delphi-Quellcode:
deiner Stringlist verwenden. Zum Einfügen eines Eintrags nimmst Du Insert.
IndexOf
Wie Du die beiden Funktionen anwendest steht in der Online Hilfe. |
Re: Hilfe zur Stringlist
Zitat:
|
Re: Hilfe zur Stringlist
Delphi-Quellcode:
for i:=1 To sl.count dO begin //vergleiche sl[i] mit gesuchtem Ausdruck end; Das verstehe ich nicht damit gehe ich doch die Zeilen durch, aber wie finde ich den Ausdruck? :wall: z.B: "Verbesserung" der evtl irgendwo in einer Zeile Mittig steht. Um eine Antwort wäre ich euch echt dankbar. Mfg Manu |
Re: Hilfe zur Stringlist
Zitat:
|
Re: Hilfe zur Stringlist
Wenn der Ausdruck in der Mitte einer Zeile steht, wird dir auch sicherlich
![]() |
Re: Hilfe zur Stringlist
Ich frage mich wie mir das weiterhelfen soll was du mir geschrieben hast? @Khabarakh
Mfg Manu |
Re: Hilfe zur Stringlist
IndexOf liefert Dir die Indexposition des gesuchten Ausdrucks.
Insert(position,'ausdruck') kannst Du einen Ausdruck in die Stringlist schreiben. Damit sollte eigentlich Dein Problem zu erschlagen sein. Grüße Klaus |
Re: Hilfe zur Stringlist
Also wenn ich sage :
Delphi-Quellcode:
Kommt lediglich -1 raus obwohl dieses Wort in meiner stringlist steht.
showmessage(inttostr(wliste.indexOf('Office')));
Folgendes steht in dieser Zeile: - Office Kenntnisse Wenn ich das wie oben steht ausführe bekomme ich echt nur -1 raus. Verzweifle schön langsam daran, es kann es doch net geben das man das nicht einfach auslesen kann. Mit Pos versuche ich es gerade aber bin mir nicht sicher ob das klappen wird. Mfg Manu |
Re: Hilfe zur Stringlist
Zitat:
In diesem Fall mußt du wie beschrieben die einzelnen Einträge durchgehen und mit pos überprüfen ob gesuchtes Wort in Eintrag ist. |
Re: Hilfe zur Stringlist
In dem Fall ist 'Office Kenntnisse' ein String Deiner Stringlist
und IndexOf liefert -1 zurück weil ja der String 'Office Kenntnisse' heißt und nicht 'Office'. IndexOf sucht nicht nach einer Teilmenge.
Delphi-Quellcode:
Vielleicht geht es ja so?
i:=0;
found:=false; while (i <= wslist.count-1) AND NOT found DO begin if pos('suchstring',wslist[i]) <> 0 then found:=true; inc(i); end; if found then position:=i-1 else showMessage('...'); Grüße Klaus |
DP-Maintenance
Dieses Thema wurde von "Sharky" von "Programmieren allgemein" nach "Object-Pascal / Delphi-Language" verschoben.
Ist ja eine Frage zu Delphi |
Re: Hilfe zur Stringlist
Hallo :hi:,
sowas?
Delphi-Quellcode:
Ist sehr ähnlich dem Beispiel im Vorpost. ;)
procedure TForm1.Button1Click(Sender: TObject);
var i: Integer; begin for i := 1 to ListBox1.Count - 1 do if Pos('office', ListBox1.Items.Strings[i]) <> 0 then ShowMessage(IntToStr(i) + ': ' + ListBox1.Items.Strings[i]); end; MfG freak |
Re: Hilfe zur Stringlist
Zitat:
|
Re: Hilfe zur Stringlist
Zitat:
Zitat:
freak |
Re: Hilfe zur Stringlist
Weil ich nur einen Teilstring suche und das funzt net mit indexof.
Mfg Manu |
Re: Hilfe zur Stringlist
Wie wärs mit memo1.text:=stringreplace(memo1.text,'wort1','wort 1wort2',[srReplaceAll]);?
|
Re: Hilfe zur Stringlist
Erstmal danke für eure Hilfe, ich bin mittlerweile soweit, dass er mir die richtige stelle über ein showmessage ausgibt. Nur wenn ich die ganze Sache einfügen will sprich:
Delphi-Quellcode:
schreibt er es mir in zeile 52 weil test = 52 entspricht.If Pos(' ', wliste.text) > 0 then test:= Pos('Office', wliste.text); wliste.inert(test,'keine ahnuge'); Wie kann ich jezt sagen das er es an Zeichenstelle 52 es hineinschreibt?? Mfg Manu |
Re: Hilfe zur Stringlist
Zitat:
MfG freak |
Re: Hilfe zur Stringlist
Probier halt mal meine Lösung aus:
wliste.text:=StringReplace(wliste.text,'Office','K eine Ahnung',[srReplaceAll]); EDIT: Memo, Stringliste, auch egal. Jetzt müsste es gehen. |
Re: Hilfe zur Stringlist
Zitat:
Delphi-Quellcode:
Wobei auf Groß- und Kleinschreibung zu achten ist. ;)
wliste.Items.Text := StringReplace(wliste.Items.Text, 'Office', 'Keine Ahnung', [rfReplaceAll]);
MfG freak |
Re: Hilfe zur Stringlist
Korrekt. Wenn man das nicht will, einfach noch ein Flag dazu tun, einfach mal in die OH gucken unter StringReplace.
|
Re: Hilfe zur Stringlist
Hi 3 of 8,
wliste.text:=StringReplace(wliste.text,'Office','K eine Ahnung',[srReplaceAll]); das funzt net kommt folgende Felhermeldung : [Fehler] uMain.pas(282): Undefinierter Bezeichner: 'srReplaceAll' [Fehler] uMain.pas(282): Inkompatible Typen: 'Enumeration' und 'Integer' und das andere: wliste.Items.Text := StringReplace(wliste.Items.Text, 'Office', 'Keine Ahnung', [rfReplaceAll]); geht auch nicht, warum kann ich leider nicht sagen da ich nicht so viel ahnnung habe. Mfg Manu P.s Hat jmd noch ne Idee? |
Re: Hilfe zur Stringlist
Meine Aussage bezieht sich auf eine Stringlist. Der Text wird von dieser in dieselbige geschrieben. 3 of 8 bezieht sich auf ein Memo. [srReplaceAll] ist wahrscheinlich nur ein Tippfehler, es mus [rfReplaceAll] heißen. Das erkenntst du auch selbst sofort, wenn du die Hilfe benutzt. ;)
MfG freak |
Re: Hilfe zur Stringlist
Naja ich hab im mom das so drin stehen:
Delphi-Quellcode:
type
listenarray = record zeile:TStringlist; end; TReplaceFlags = set of (rfReplaceAll, rfIgnoreCase); und unten:
Delphi-Quellcode:
[Fehler] uMain.pas(284): Inkompatible Typen
wliste.Text := StringReplace(wliste.Text, 'Office', 'Keine Ahnung', [rfReplaceAll]);
Nur das geht auch nicht weiß du vll warum?? Manu |
Re: Hilfe zur Stringlist
Zitat:
Und von welchen Typ ist das wliste? MfG freak |
Re: Hilfe zur Stringlist
wliste ist eine stringlist.
Mfg Manu |
Re: Hilfe zur Stringlist
Funktioniert es jetzt? Wenn nicht kannste mir mal deinen Sourcecode senden, damit das läuft. Natürlich nur wenn du willst. ;)
MfG freak |
Re: Hilfe zur Stringlist
Hallo christian,
also des funktioniert ich danke dir für deine hilfe. :dancer: Mfg Manu Übrigens danke auch an alle anderen. |
Re: Hilfe zur Stringlist
Zitat:
|
Re: Hilfe zur Stringlist
Zitat:
allerdings DU auch nicht ... sonnst hätteste gemerkt, daß ich schon n paar Antworten bekommen habe :mrgreen: naja EIGENTLICH dachte ich, daß IndexOf auch teil-strings findet ... war wohl falsch .... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:43 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