![]() |
Re: String an bestimmtem Zeichen Splitten
Hi,
nein, ein Char (von Character) wird wie ein String mit genau einem Zeichen geschrieben. Der Compiler bestimmt aus dem Kontext, ob es ein String oder ein Char ist. Also 'h' und nicht nur h. (Es gibt aber auch Sprachen, bei denen unterschieden wird, da ist dann z. B. "h" ein String und 'h' ein Char, aber bei pascalartigen Sptrachen ist es in beiden Fällen 'h'.) Für eine neue Zeile reicht #13 aus, obwohl unter Windows eigentlich #13#10 korrekt ist.
Delphi-Quellcode:
Mfg
'Zeile1'#13'Zeile2'
FAlter |
Re: String an bestimmtem Zeichen Splitten
vielen Dank, ihr seid klasse^^
eine Frage noch.. ich habe ein normales Label und möchte es mit einem String füllen.. geht nicht also nicht mit der Funktion von oben
Delphi-Quellcode:
..
RandomZeile: integer;
Loesung: string; {Vorgabe} SplitStr(const S: string; Delim: Char; out S1, S2: string) {von mir ausgefüllt} Splitstr(Richedit1.Lines[RandomZeile],'=',label1.Caption ,Loesung) |
Re: String an bestimmtem Zeichen Splitten
Nimm noch eine lokale Stringvariable, übergib diese an die Funktion und weise sie anschließend dem Label zu.
|
Re: String an bestimmtem Zeichen Splitten
k dachte es geht auch so..
|
Re: String an bestimmtem Zeichen Splitten
An deiner Stelle würde ich mir trotzdem das Tutorial mal anschauen. Dann kannst du mit Strings alles machen was du willst, wenn du alles durchgegangen bist. Bei dem Lösungscodepost z.b. weist du wieder nicht was ein Delimiter ist oder was die einzelnen Paramter bedeuten. klar man kanns bei dem einfachen bsp deuten aber bei anderen fuktionen ist es schon schwieriger zu wissen, wofür ein einzelner paramter steht...
Naja hauptsache du hast jetzt deine Lösung und sie auch verstanden ;) |
Re: String an bestimmtem Zeichen Splitten
Hi,
Zitat:
Delphi-Quellcode:
Da es gerade in nem anderen Thread darum geht... Ist bei Delphi und Lazarus (bzw. VCL und LCL) gleich.
var
RandomZeile: integer; Loesungm Key: string; Key := RichEdit1.Lines.Names[RandomZeile]; Label1.Caption := Key; Loesung := RichEdit1.Lines.Values[Key]; Mfg FAlter |
Re: String an bestimmtem Zeichen Splitten
Ja habe ich..^^
nur die Funktion klappt trotzdem nicht und da wären wir wieder bei deinem Punkt, denn wenn ich sie selber gemacht hätte, wüsste ich woran es liegt: edit: vergesst es..^^ muss mich korrigieren... ich hatte einen schleifenfehler davor, die zeilen oben hat er einfach übersprungen, der code stimmt... SRY^^ |
DP-Maintenance
Dieses Thema wurde von "Matze" von "Programmieren allgemein" nach "Object-Pascal / Delphi-Language" verschoben.
Delphi-Frage |
Re: String an bestimmtem Zeichen Splitten
Hi,
auch wenn es nicht an den bisherigen Code anschließt, darf es so etwas sein?
Delphi-Quellcode:
Gruß
function StringSplit(input : String; SeperatorChar : Char) : TStringList;
var SL : TStringList; S1, S2 : String; begin SL := TStringList.Create; s1 := input; while POS(SeperatorChar, S1) <> 0 do begin S2 := Copy(S1, 1, POS(SeperatorChar, S1) -1); SL.Add(S2); S1 := Copy(S1, POS(SeperatorChar, S1) +1, Length(S1)); end; SL.Add(S1); Result := SL; end; [Edit] Ich glaub das war kontraproduktiv :oops: [/Edit] |
Re: String an bestimmtem Zeichen Splitten
Zitat:
und was machst du bei einer Exception?
Delphi-Quellcode:
In deinem Fall wird dann die SL nicht freigegeben (aber natürlich auch nicht zurückgegeben).
function ReturnsAnObject: TObject;
begin Result := TObject.Create; try ... except Result.Free; // <-- WICHTIG! raise; end; end; Mfg FAlter |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:06 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