Einzelnen Beitrag anzeigen

Amateurprofi

Registriert seit: 17. Nov 2005
Ort: Hamburg
1.064 Beiträge
 
Delphi XE2 Professional
 
#18

AW: Im String Nach Wort suchen und nebenstehendes auslesen

  Alt 8. Dez 2015, 13:29
Nicht sehr elegant, und nur oberflächlich geprüft:

Delphi-Quellcode:
FUNCTION GetValue(const Text,Id:String):String;
var I,J,K,Len:Integer;
begin
   Result:='';
   if (Text='') or (Id='') then Exit;
   Len:=Length(ID);
   J:=0;
   repeat
      K:=PosEx('"',Text,J+1); // erstes '"'
      J:=PosEx('"',Text,K+1); // zweites '"'
      if J=0 then Exit;
      I:=J;
      while (I>0) and (Text[I]<>'=') do Dec(I);
      Dec(I);
      while (I>0) and (Text[I]=' ') do Dec(I);
      Dec(I,Len);
      if I>=0 then
         if SameText(Copy(Text,I+1,Len),Id) then begin
            if I<>0 then begin
               while (I>1) and (Text[I]=' ') do Dec(I);
               if (I>1) and (Text[I]<>'"') then Exit;
            end;
            Result:=Copy(Text,K+1,J-K-1);
            Exit;
         end;
   until False;
end;
Gruß, Klaus
Die Titanic wurde von Profis gebaut,
die Arche Noah von einem Amateur.
... Und dieser Beitrag vom Amateurprofi....
  Mit Zitat antworten Zitat