Split en string op i flere dele

Tags:    delphi

Hej allesammen,

jeg er under udviklingen af scripting support til min hjemmekodede IRC klient stødt på et problem..

Brugerne skal ha mulighed for at kunne eksekvere deres egne scripts med parametre. men!

man skal kunne angive parametre med mellemrum, så fremt teksten er indrammet i "". ex:

/foo foo bar skal deles til
funktion: foo
param[0] = 'foo'
param[1] = 'bar'

men
/foo "foo bar" m00 skal deles til
funktion: foo
param[0] = 'foo bar'
param[1] = 'm00'

kan ikke lige finde på en smart måde at gøre det på, så håber der sidder nogle kloge hoveder herinde der kan fremtrylle noget kode :)

Med venlig hilsen
Ken Christensen



4 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 5 karma
Sorter efter stemmer Sorter efter dato
var
t:TStrings;
begin
t:=TStringList.Create;
t.Delimiter:=' ';
t.DelimitedText:='foo foo bar';
showmessage(t.text);
end;
-----------------------------------------------------------------------------

Min side ->www.the-hive.dk/~donp/



Hey "Nørden",
ahh 1000 tak, kendte ikk lige til den funktion, men der kan man bare se :D

Med venlig hilsen
Ken Christensen



hvis du bruger den funktion får du en parameter ved hvert mellemrum også når det er indkapslet i ""

Jeppe Johansen
Jeppesoftware@hotmail.com



det har han jo ret i desvære så her er en lille videre udvikling.

Fold kodeboks ind/udKode 


t.QuoteChar:=char(0);

skal være en eller anden usandsynlig char i inputet
-----------------------------------------------------------------------------

Min side ->www.the-hive.dk/~donp/



t