AGB  ·  Datenschutz  ·  Impressum  







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

Strings trennen

Ein Thema von capo · begonnen am 29. Nov 2006 · letzter Beitrag vom 30. Nov 2006
Antwort Antwort
Seite 2 von 2     12   
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#11

Re: Strings trennen

  Alt 29. Nov 2006, 20:25
Hallo,

und wieder sind die Anforderungen nicht klar definiert - aber trotzdem:

Delphi-Quellcode:
function CapoStr(const s: String): String;
var
  iLen, iPos: Integer;
begin
  iLen := Pos('-', s);
  iPos := PosEx('-', s, Succ(iLen));
  Result := Copy(s, 1, iLen) + Copy(s, Succ(iPos), MaxInt);
end;

// Test
procedure TDemoForm.MergeButtonClick(Sender: TObject);
begin
  ShowMessage(CapoStr('0141-123456 -98765'));
end;
Gute Nacht
  Mit Zitat antworten Zitat
capo

Registriert seit: 7. Jul 2006
453 Beiträge
 
Delphi 11 Alexandria
 
#12

Re: Strings trennen

  Alt 29. Nov 2006, 21:59
Hallo Marabu,

Zitat:
und wieder sind die Anforderungen nicht klar definiert - aber trotzdem:
stimmt,ich habe manchmal schon so meine Formulierungsprobleme. Danke dir für deine Hilfe und Hellsichtigkeit.

So hab ich es nun gemacht.
Danke an alle nochmal.
Delphi-Quellcode:

function PosEx(const Substr: string; const S: string; Offset: Integer): Integer;
begin
  if Offset <= 0 then Result := 0
  else
    Result := Pos(Substr, Copy(S, Offset, Length(S)));

  if Result <> 0 then
    Result := Result + Offset - 1;
end;

function CapoStr(const s: string): string;
var
  iLen, iPos: Integer;
begin
  iLen := Pos('-', s);
  iPos := PosEx('-', s, Succ(iLen));
  Result := Copy(s, 1, iLen) + Copy(s, Succ(iPos), MaxInt);
end;

procedure TForm1.Button2Click(Sender: TObject);
var
  i: integer;
begin
  for i := 0 to Memo1.Lines.Count - 1 do
    memo2.Lines.Add(CapoStr(Memo1.Lines[i]))
end;
Hotte
  Mit Zitat antworten Zitat
Ines

Registriert seit: 22. Aug 2006
Ort: Augsburg
96 Beiträge
 
Delphi 2009 Enterprise
 
#13

Re: Strings trennen

  Alt 30. Nov 2006, 06:23
Hallo capo,

hier nur noch eine Erklärung zu LeftStr + RightStr (gibt es in Delphi7):

Die Funktion gibt einen Teilstring der angegebenen Länge zurück, der am Anfang des Strings beginnt.
function LeftStr(const AText: AnsiString; const ACount: Integer): AnsiString; overload;

Die Funktion gibt einen Teilstring mit einer bestimmten Länge zurück, der sich am Ende des angegebenen Strings befindet.
function RightStr(const AText: AnsiString; const ACount: Integer): AnsiString; overload

beide definiert in StrUtils


Gruß Ines
Ines
  Mit Zitat antworten Zitat
oldmax

Registriert seit: 27. Apr 2006
Ort: Gieboldehausen
167 Beiträge
 
#14

Re: Strings trennen

  Alt 30. Nov 2006, 08:31
hi
Zitat:
ne du machst keinen Fehler, in der Funktion wurde lediglich eine Kleinigkeit vergessen. Hab ich mal schnell korrigiert:
Gut, ich will noch einmal ergänzend etwas zugeben:
Vergessen hab ich, den RefStr zuzuweisen.
Delphi-Quellcode:
...
RefStr:=MeinText;
Ausg:='';
...
Ok, passiert, wenn man den Code nicht prüft. Die Funktion aber ist etwas mehr als nur erster und letzter Textteil, es ist auch eine Möglichkeit, beliebig viele Textelemente mit Separatoren zusammen zu setzen und hinterher wieder zu zerlegen.
Aber es gibt ja viele Wege nach Rom.....
Gruß oldmax
Noch ist mein Rechner mir zu Diensten.... ansonsten habe ich die Macht ihn zu vernichten !
  Mit Zitat antworten Zitat
capo

Registriert seit: 7. Jul 2006
453 Beiträge
 
Delphi 11 Alexandria
 
#15

Re: Strings trennen

  Alt 30. Nov 2006, 08:56
Danke Ines und oldmax
Hotte
  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 17:42 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