Entwickler-Ecke

Sonstiges (Delphi) - Problem mit Pos


Luncustaf - Sa 05.04.03 04:38
Titel: Problem mit Pos

Quelltext
1:
2:
3:
    incoming := plot.Lines[i];
    while Pos('ä', incoming) > 0 do
    incoming[Pos('ä', incoming)] := 'ae';


plot = memo
incoming = variable typ string

wenn ich pos richtig verstanden habe ersetzt es mir mit dem code oben alle ä's durch ae's ich bekomm aber immer hier


Quelltext
1:
incoming[Pos('ä', incoming)] := 'ae';                    


ne fehlermeldung das char und string net kompatible sind - aber ich weis nicht wo da ein char sein soll - in der hilfe steht der code so drinnen :(

gr€€tz


Delete - Sa 05.04.03 04:49
Titel: Re: Problem mit Pos
Luncustaf hat folgendes geschrieben:
wenn ich pos richtig verstanden habe ersetzt es mir mit dem code oben alle ä's durch ae's ich bekomm aber immer hier

Du hast es nicht richtig verstanden. Stell den Cursor mal in das Wort pos und drück F1. Lesen, staunen und verstehen.
Was du suchst ist StringReplace.


Luncustaf - Sa 05.04.03 05:16

hi luckie


Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
var S: string;

begin
  S := '   123,5';
  { Leerzeichen in Nullen umwandeln }
  while Pos(' ', S) > 0 do
    S[Pos(' ', S)] := '0';
end;


so das steht in der hilfe der kommentar sagt aus das er die leerstellen in nullen umwandelt :) also hab ich mir gedacht dann kann ich ja meine ä's auch in ae's umwandeln.

thx für deine hilfe

gr€€tz


AndyB - Sa 05.04.03 07:21

Nur ist 'ae' kein Char sonder ein String, und einem Char (S[x]) kann man keinen String zuweisen, sondern nur einen Char.


Delete - Sa 05.04.03 13:55

Wenn du dich auf den ganzen Code beziehst, dann hast du recht, aber nicht, wenn du dich nur auf die Funktion pos beziehst.