Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Wort nach einem Wort (https://www.delphipraxis.net/129680-wort-nach-einem-wort.html)

PhilmacFLy 23. Feb 2009 23:50


Wort nach einem Wort
 
Ich habe folgendes problem ich habe einen String, dieser String besteht immer aus 2 Wörtern. Das erste wort ist mir bekannt. Wie kann ich jetzt das 2te Wort auslesen?

BackOrifice 23. Feb 2009 23:54

Re: Wort nach einem Wort
 
Length(str)
Pos(sub, str)
Copy(str,pos,length)
....

Zbs. könntest du nach dem Trennzeichen suchen, wenn der Str "Wort1 Wort2" ist und ab dem ersten Zeichen des 2. Wortes kopieren.

PhilmacFLy 23. Feb 2009 23:56

Re: Wort nach einem Wort
 
und wie würde das denn gehen weil der string sieht nämlich genau so aus also "wort1 wort2"

ryLIX 24. Feb 2009 00:01

Re: Wort nach einem Wort
 
http://www.delphibasics.co.uk/RTL.asp?Name=AnsiPos

PhilmacFLy 24. Feb 2009 00:03

Re: Wort nach einem Wort
 
ne ich bruach ja nicht als rückgabe nen bool sondern den string von wort2

Neutral General 24. Feb 2009 00:05

Re: Wort nach einem Wort
 
Du bekommst ein Int. Der Rest ist Copy und Denksache :P

PhilmacFLy 24. Feb 2009 00:08

Re: Wort nach einem Wort
 
aber funktioniert das nicht nur wenn ich das 2te wort kenn oder stell ich mich grad zu blöd an

Neutral General 24. Feb 2009 00:12

Re: Wort nach einem Wort
 
Zitat:

Zitat von PhilmacFLy
...oder stell ich mich grad zu blöd an

Ja :mrgreen: :P

Überleg dir, welches Zeichen vor dem zweiten Wort steht. Das suchst du. Dann weißt du ab wo das 2. Wort anfängt. Dann gehts (je nach Geschmack) weiter mit Copy oder Delete ;)

omata 24. Feb 2009 02:48

Re: Wort nach einem Wort
 
Delphi-Quellcode:
function GetWordTwo(text:string):string;
var RegExpr:TRegExpr;
begin
  RegExpr:=TRegExpr.Create;
  try
    RegExpr.ModifierG:=true;
    RegExpr.Expression:='^([^ ]*) *([^ ]*)';
    if RegExpr.Exec(text) then
      Result:=RegExpr.Match[2]
    else
      Result:='';
  finally
    RegExpr.free;
  end;
end;
RegExpr

BackOrifice 24. Feb 2009 04:52

Re: Wort nach einem Wort
 
Ohne, dass man jetzt 4k Zeilen RegExpr einbinden muss:

Delphi-Quellcode:
function GetSecondWord(Str: String): String;
begin
  Result := Copy(Str,Pos(' ',Str) + 1,Length(Str);
end;
Davon ausgehend, dass String := 'Wort1 Wort2' ist.


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:01 Uhr.
Seite 1 von 3  1 23      

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