Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi String auf bestimmte Zeichenfolge überprüfen (https://www.delphipraxis.net/12037-string-auf-bestimmte-zeichenfolge-ueberpruefen.html)

Zyro 19. Nov 2003 10:34


String auf bestimmte Zeichenfolge überprüfen
 
Kann man einen beliebigen String auf eine bestimmte Zeichenfolge überprüfen?

zB: Ich will wissen ob in "Ort=#var#" die zeichen "#var" vorkommen. Und da sie es tuen, sollen sie durch einen String ersetzt werden.

himitsu 19. Nov 2003 10:54

Re: String auf bestimmte Zeichenfolge überprüfen
 
Delphi-Quellcode:
S := 'Ort=#var#';

I := Pos('#var#', S);
If I > 0 Then
  S := Copy(S, 1, I - 1) + 'irrgendwas' + Copy(S, I + 5{länge von "#var#"}, Length(S));

{S = 'Ort=irrgendwas'}
oder

Delphi-Quellcode:
S := StringReplace(S, '#var#', 'irrgendwas', rfReplaceAll);

Zyro 19. Nov 2003 11:11

Re: String auf bestimmte Zeichenfolge überprüfen
 
muss ich bei deinem zweiten beispiel auch die schleife aus deinem ersten beispiel benutzen?

Und warum sagt er mir:
Delphi-Quellcode:
[Error] Unit1.pas(182): Incompatible types: 'TReplaceFlags' and 'Enumeration'
Achja..mein Quellcode:
Delphi-Quellcode:
Feld[t] := StringReplace(Feld[t], '#var#',''+Edit1.Text+'', rfReplaceAll);

himitsu 19. Nov 2003 11:25

Re: String auf bestimmte Zeichenfolge überprüfen
 
Delphi-Quellcode:
S := StringReplace(S, '#var#', 'irrgendwas', [rfReplaceAll]);
hab "[" & "]" vergessen.

Bei diesem Beispiel nicht.



rfReplaceAll: Alle Fundstellen werden ersetzt. Wenn dieses Flag nicht vorhanden ist, wird nur die erste Fundstelle des gesuchten Teilstrings ersetzt.

rfIgnoreCase: Bei der Suche nach dem Teilstring wird die Groß-/Kleinschreibung nicht berücksichtigt. Wenn dieses Flag nicht vorhanden ist, werden nur Fundstellen berücksichtigt, deren Schreibweise genau mit dem Suchstring übereinstimmt.

Delphi-Quellcode:
S := StringReplace(S, '#var#', 'irrgendwas', []);
S := StringReplace(S, '#var#', 'irrgendwas', [rfReplaceAll]);
S := StringReplace(S, '#var#', 'irrgendwas', [rfReplaceAll, rfIgnoreCase]);
S := StringReplace(S, '#var#', 'irrgendwas', [rfIgnoreCase]);

Zyro 19. Nov 2003 11:40

Re: String auf bestimmte Zeichenfolge überprüfen
 
ahaa.... ;) jo jetzt gehts. Bin dir sehr dankbar.


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:52 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