tach,
kann mir hier mal bitte jemand erklären, was ich bei der Delphi Funktion StringReplace hinten als Flags einsetzen muss?
hier ein Bsp:
label1.caption StringReplace(edit1.text, edit2.text, edit3.text; FLAGS???);
könnte mir das bitte jemand erklären?? Und nochwas, ein Freund hat mir dann seine selbstgetüdelte Funktion dafür rübergemailt, aber leider funzt die nicht. Kann mir jemand erklären, was er falsch gemacht hat:
var position : integer;
s : String;
...
begin
If Pos(\'a\',S) > 0 then do
begin
position := Pos(\'a\',S);
If Pos(\'b\',S) = position+1 then do
begin
S[Pos(position, S)] := \'x\';
S[Pos(position+1, S)] := \'y\';
end;
end;
end;
Mit freundlich Grüßen
Der Ludi
Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge
1.
eine richtige If then else abfrage sieht so aus:
if pos('s', a) > 0 then begin... (ohne then)
2.
s[pos(position, s)]:= ...
pos verlangt als 1. Parameter einen String. Position ist aber eine Zahl, was kacke ist.
also: lass einfach die pos funktion weg!:
s[position]:= 'x';
s[position + 1]:= 'y';
beantwortet?
ich meine natürlich ohne "do" (1.)
erstmal danke, werd ich gleich mal ausprobieren! Das mit der For-Schleife war mir klar, aber ich hab das so von ihm kopiert *gg* Naja, aber auf jeden Fall würde ich trotzdem gerne wissen, wie das mit dieser StringReplace-Funktion funktioniert? Weil, warum soll ich das Rad neu erfinden ;-)
danke im Voraus
cya
Hab dir mal die Hilfe kopiert:
StringReplace gibt einen String mit ersetzten Sub-Strings zurück.
Unit
Sysutils
Kategorie
String-Verarbeitung
type
TReplaceFlags = set of (rfReplaceAll, rfIgnoreCase);
function StringReplace(const S, OldPattern, NewPattern: string; Flags: TReplaceFlags): string;
Beschreibung
Mit StringReplace ersetzen Sie in dem angegebenen String den im Parameter OldPattern festgelegten Sub-String mit dem im Parameter NewPattern übergebenen neuen Sub-String. StringReplace nimmt an, daß der String Multibyte-Zeichen enthalten kann.
Wenn im Parameter Flags nicht rfReplaceAll enthalten ist, wird nur das erste Vorkommen von OldPattern im String S ersetzt. Andernfalls werden alle Instanzen von OldPattern durch NewPattern ersetzt.
Wenn der Parameter Flags rfIgnoreCase enthält, wird die Groß-/Kleinschreibung nicht berücksichtigt.
Danke, aber in der Hilfe war ich schon ;-) Naja, auf jeden Fall hab ich das Problem jetzt so ähnlich gelöst, wie du mir vorher gesagt hast, danke dafür. Aber trotzdem, nochmal wegen der StringReplace Funktion: Die ersten 3 Parameter sind ja klar, ich komm nur nicht hinten mit den Flags klar, ich weiß nicht, was ich da einsetzen muss. vielleicht weiß das ja noch jemand.
cu