AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Split-Funktion in Delpi???

Ein Thema von torud · begonnen am 2. Jun 2003 · letzter Beitrag vom 13. Jul 2005
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#11

Re: Split-Funktion in Delpi???

  Alt 25. Sep 2003, 07:52
da habe ich zwei Zeilen Code unterschlagen

Code:
function Split(InStr, SplitAt: String): TStringArray;
var
  I, L: Integer;
begin
  SetLength(Result, 0);
  if InStr = '' then
    Exit;
  I := Pos(SplitAt, InStr);
  L := Length(SplitAt);
  while I > 0 do
  begin
    SetLength(Result, Succ(Length(Result)));
    Result[High(Result)] := Copy(InStr, 1, Pred(I));
    Delete(InStr, 1, Pred(I + L));
    I := Pos(SplitAt, InStr);
  end;
[color=#ff0009] SetLength(Result, Succ(Length(Result)));
  Result[High(Result)] := InStr; [/color]
end;
......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
FreewareFire

Registriert seit: 24. Sep 2003
51 Beiträge
 
Delphi 7 Professional
 
#12

Re: Split-Funktion in Delpi???

  Alt 25. Sep 2003, 08:11
Vielen Dank!!!

Es klappt hervorragend!
  Mit Zitat antworten Zitat
Benutzerbild von Wormid
Wormid

Registriert seit: 26. Aug 2003
Ort: Steinfurt
292 Beiträge
 
Delphi XE2 Professional
 
#13

Re: Split-Funktion in Delpi???

  Alt 26. Sep 2003, 17:17
Warum benutzt eigentlich niemand die Delphi-eigene Routine "ExtractStrings" zum splitten von Strings?

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var s: String;
    Items: TStringList;
begin
  Items := TStringList.Create;
  s := 'text1$$text2$$text3';
  ExtractStrings(['$'], [], PChar(s), Items);
  Memo1.Text := Items.Text;
  Items.Free
end;
Gruß

Wormid

[edit=Christian Seehase]Delphi-Tag geschlossen Mfg, Christian Seehase[/edit]
Debuggers don't remove Bugs, they only show them in Slow-Motion.
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#14

Re: Split-Funktion in Delpi???

  Alt 26. Sep 2003, 17:26
Moin Wormid,

Zitat von Wormid:
Warum benutzt eigentlich niemand die Delphi-eigene Routine "ExtractStrings" zum splitten von Strings?
Vielleicht weil sie nicht dokumentiert ist...
Ist zumindest in D5 nicht in der Hilfe zu finden, wenn auch in der Unit classes enthalten.
Danke für den Tip.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Delphi-Freak
Delphi-Freak

Registriert seit: 26. Sep 2004
Ort: Wien Nähe (Österreich)
321 Beiträge
 
Delphi 2006 Architect
 
#15

Re: Split-Funktion in Delpi???

  Alt 13. Jul 2005, 10:32
Also mein Delphi2005 (Personal) kennt die Funktion, auch die Hilfe.
Ist es erlaubt, die Hilfe hier zu zitieren, oder gibt es da rechtliche Probleme? Wenn ja, dann kann ichs ja hierherschreiben.

LG, Gerhard
Gerhard Pfister
*
»To him who loves us and has freed us from our sins by his blood [...] be glory and power for ever and ever! Amen.« (Revelation*1,*5?6)
  Mit Zitat antworten Zitat
Benutzerbild von Aenogym
Aenogym

Registriert seit: 7. Mär 2004
Ort: Schwerin
1.089 Beiträge
 
Delphi 7 Enterprise
 
#16

Re: Split-Funktion in Delpi???

  Alt 13. Jul 2005, 11:01
Zitat von Delphi-Freak:
Also mein Delphi2005 (Personal) kennt die Funktion, auch die Hilfe.
Ist es erlaubt, die Hilfe hier zu zitieren, oder gibt es da rechtliche Probleme? Wenn ja, dann kann ichs ja hierherschreiben.

LG, Gerhard
die hilfe zu zitieren ist erlaubt (solange du nicht das _gesamte_ helpbook abtippst )

und zu dieser undokumentierten extractStrings-funktion kann ich nur sagen: ich nutze lieber die explode() aus der CodeLibrary, denn die gibt mir einen simplenn array zurück und keine StringList, die ich erstmal Createn muss...

aenogym
Steffen Rieke
Was nicht buzzt, wird buzzend gemacht!
http://blog.base-records.de
http://www.base-records.de
  Mit Zitat antworten Zitat
Benutzerbild von Delphi-Freak
Delphi-Freak

Registriert seit: 26. Sep 2004
Ort: Wien Nähe (Österreich)
321 Beiträge
 
Delphi 2006 Architect
 
#17

Re: Split-Funktion in Delpi???

  Alt 13. Jul 2005, 11:13
Naja, Geschmackssache...
Und wenn würde ich das ACV-Prinzip (Strg+A, Strg+C, Strg+V) verwenden und nicht alles abtippen
Aber trotzdem, für die Interessierten, die noch nicht d2k5 besitzen (viele werden es ja nicht sein):
Code:
[size=18][color=#000080][b]ExtractStrings Routine[/b][/color][/size]
Füllt eine Liste mit Teil-Strings, die aus einem String extrahiert werden.

[b]Unit[/b]
Classes

[b]Syntax[/b]
[color=#000080][Delphi] function ExtractStrings(Separators: TSysCharSet, WhiteSpace: TSysCharSet, Content: PAnsiChar, Strings: TStrings): Integer;[/color]

[b]Beschreibung[/b]
Mit ExtractStrings können Sie eine String-Liste mit den Teil-Strings des in Content übergebenen nullterminierten Strings füllen.

Separators enthält die Trennzeichen, mit denen die Teil-Strings voneinander getrennt sind. Wagenrücklaufzeichen, Newline-Zeichen und Anführungszeichen (einfach oder doppelt) werden immer als Trennzeichen behandelt. Trennzeichen werden innerhalb eines Strings mit Anführungszeichen bis zum letzten schließenden Anführungszeichen ignoriert. (Beachten Sie, dass Zeichen in Anführungszeichen in einem String mit Anführungszeichen vorkommen können, wenn Anführungszeichen doppelt verwendet werden.)

WhiteSpace enthält Zeichen, die bei der Analyse von Content ignoriert werden sollen, wenn sie am Anfang eines Strings vorkommen.

Content ist der nullterminierte String, der in Teil-Strings zerlegt werden soll.

Strings ist die String-Liste, der alle aus Content extrahierten Teil-Strings hinzugefügt werden. Diese Liste wird von ExtractStrings nicht gelöscht, d.h. alle in ihr enthaltenen Strings bleiben beim Aufruf von ExtractStrings erhalten.

ExtractStrings gibt die Anzahl der Strings zurück, die dem Strings-Parameter hinzugefügt wurden.

[color=#000080]Hinweis:[/color] ExtractStrings fügt der Liste keine leeren Strings hinzu.
Gerhard Pfister
*
»To him who loves us and has freed us from our sins by his blood [...] be glory and power for ever and ever! Amen.« (Revelation*1,*5?6)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz