Einzelnen Beitrag anzeigen

Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#8

Re: Sonderzeichen wo keine sein sollten

  Alt 25. Jul 2005, 16:05
Das ist das typische "Schleifen-Lösch-Problem": Du löschst ein Zeichen im String per Delete. Jetzt rücken alle Chars dahinter logischerweise einen Index auf. Nun erhöhst du aber i und überprüfst wort[i]. Damit hast du aber einen Char ausgelassen => Du entfernst nur jedes zweite Zeichen.

Zitat:
Delphi-Quellcode:
while(I<length(htmlcode))or (wort <> 'gold.gif"> ')do
begin
  I:= I+1;
  wort := copy(htmlcode,i-1,11);
end;
Delphi-Referenz durchsuchenPos

Hier mein Code-Vorschlag:
Delphi-Quellcode:
htmlcode:=WebBrowser1.OleObject.Document.Body.InnerHtml;

Wort := Copy(htmlcode, Pos('.gif"> ', htmlcode), Length('.gif"> '));

for i := Length(Wort) downto 1 do
  if not InRange(Ord(Wort[i], Ord('0'), Ord('9')) then
    Delete(Wort, i, 1);
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat