Einzelnen Beitrag anzeigen

Amateurprofi

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

AW: {$region '...'} {$endregion}

  Alt 25. Jul 2019, 13:03
Ja, hab ich gerade noch einmal geprüft, und damit ich nichts übersehe mit nachstehender Prozedur.
Erwartungsgemäß steht da "6393 6394 Region folgt Region"
Zeilen 6393 und 6394 sind die Zeilen
Delphi-Quellcode:
         if AnsiContainsText(List[I],'{$Region') then begin
            if (J>0) and AnsiContainsText(List[J-1],'{$Region') then

Delphi-Quellcode:
PROCEDURE TMain.Test;
const sRegReg=' Region folgt Region'; sNoReg='EndRegion ohne Reagion';
var I,J,L:Integer; List,ErrList:TStrings;
begin
   if ClipBoard.HasFormat(CF_Text) then begin
      List:=TStringList.Create;
      List.Text:=ClipBoard.AsText;
      ErrList:=TStringList.Create;
      J:=0;
      L:=0;
      for I:=0 to List.Count-1 do begin
         if AnsiContainsText(List[I],'{$Region') then begin
            if (J>0) and AnsiContainsText(List[J-1],'{$Region') then
               ErrList.Add(IntToStr(L)+' '+IntToStr(I)+sRegReg);
            L:=I;
            List[J]:=List[I];
            Inc(J);
         end else if AnsiContainsText(List[I],'{$EndRegion') then begin
            if (J=0) or not AnsiContainsText(List[J-1],'{$Region') then
               ErrList.Add(IntToStr(L)+' '+IntToStr(I)+sNoReg);
            L:=I;
            List[J]:=List[I];
            Inc(J);
         end;
      end;
      if ErrList.Count=0 then ErrList.Add('Keine Fehler');
      for I:=0 to J-1 do ErrList.Add(List[I]);
      List.Free;
      ClipBoard.AsText:=ErrList.Text;
      ErrList.Free;
   end;
end;
Gruß, Klaus
Die Titanic wurde von Profis gebaut,
die Arche Noah von einem Amateur.
... Und dieser Beitrag vom Amateurprofi....
  Mit Zitat antworten Zitat