Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Stelle aus Text herauskopieren? (https://www.delphipraxis.net/135533-stelle-aus-text-herauskopieren.html)

Larsi 12. Jun 2009 16:20


Stelle aus Text herauskopieren?
 
Hi,

vorab: Ich weiß, dass das Ganze wahrscheinlich mit Pos oder PosEx zu machen ist doch irgendwie klappt das Ganze bei meinen Versuchen nicht.

Also ich folgenden String:

Variabler Inhalt - Variabler Inhalt (Variabler Inhalt)

Jetzt möchte ich den rot makierten Teil gerne herauskopieren damit ich mit dem weiter arbeiten kann...

MFG Lars Wiltfang

DeddyH 12. Jun 2009 16:21

Re: Stelle aus Text herauskopieren?
 
Der Bindestrich steht aber immer da? Dann würde ich den als Anhaltspunkt nehmen.

Larsi 12. Jun 2009 16:23

Re: Stelle aus Text herauskopieren?
 
Ja und die Klammer auch. Welcher Befehl ist denn richtig? Pos oder PosEx oder doch was anderes?

Ich weiß halt nicht wie ich wenn ich per Pos den String hinter dem - habe wie ich dann alles in den Klammern rauskriege?

DeddyH 12. Jun 2009 16:28

Re: Stelle aus Text herauskopieren?
 
Wenn im ersten variablen Inhalt kein Bindestrich und keine Klammer vorkommen kann, reicht Pos aus. Damit ermittelst Du dann die Position des Bindestrichs und die der Klammer, kopierst alles dazwischen raus und trimmst das ggf.

Fussball-Robby 12. Jun 2009 16:29

Re: Stelle aus Text herauskopieren?
 
Mit Pos ermittelst du die Stellen des Bindestrichs "-" und der Klammer "(". Mittels Copy und den vorher ermittelten Werten kannst du dann kopieren.

Fridolin Walther 12. Jun 2009 16:36

Re: Stelle aus Text herauskopieren?
 
So sähe das dann aus:
Delphi-Quellcode:
program Project2;

{$APPTYPE CONSOLE}

uses
  SysUtils;

function GetRandomString : string;
var
  i : Integer;
begin
  for i := 0 to 20 - 1 do
    Result := Result + Chr(Random(26) + Ord('A'));
end;

var
  RandomString : string;
  PartitialString : string;
begin
  Randomize;
  RandomString := Format('%s - %s (%s)', [GetRandomString, GetRandomString, GetRandomString]);
  writeln(RandomString);
  PartitialString := Trim(Copy(RandomString, Pos('-', RandomString) + 1, Pos('(', RandomString) - Pos('-', RandomString) - 1));
  writeln(PartitialString);
  readln;
end.

DeddyH 12. Jun 2009 16:38

Re: Stelle aus Text herauskopieren?
 
Das hätte ich ihn aber selbst austüfteln lassen, sonst kommt er ja nie von der "C&P-Programmierung" weg :zwinker:

Fridolin Walther 12. Jun 2009 16:40

Re: Stelle aus Text herauskopieren?
 
C&P Programmierung ist ein Oxymoron ...

DeddyH 12. Jun 2009 16:42

Re: Stelle aus Text herauskopieren?
 
Deshalb ja die Anführungsstriche :mrgreen:

Aphton 12. Jun 2009 17:49

Re: Stelle aus Text herauskopieren?
 
Zitat:

Zitat von DeddyH
Das hätte ich ihn aber selbst austüfteln lassen, sonst kommt er ja nie von der "C&P-Programmierung" weg :zwinker:

[OT]
Ich lach mir grad den A*** ab ... xD
So was von wahr ...
Aber den Höhepunkt - wie negiert man eine Zahl kann keiner überbieten ...
[/OT]


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:07 Uhr.
Seite 1 von 2  1 2      

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