我想取出行中有FSCI40 且 110600 的行以及它到NNNN之间的行,并去掉空行!谢谢
文本格式如下: ZCZC
FSCI40 BENN 110600 59417 00101 10000 21831 30100 40000 52032 60101 70000 82232
90101 A0000 B2231 C0103 D0000 E2230=NNNNZCZCFSCI40 BENN 110600 CCA
59419 00101 10000 21830 30100 40000 52030 60101 70000 82131
90103 A0000 B2231 C0103 D0000 E2229=NNNNSEA UP TO 6 M OVER WARNING AREAS.
SWELL N TO NE 3 M OVER ECS AND TAIWAN STRAIT.
THUNDERSTORMS/SEVERE WEATHER
SCATTERED SQUALLY (SQ) SHOWERS (SH) AND THUNDERSTORMS (TS) OVER ECS,
SEAS NEAR TAIWAN, SEAS NEAR LUZON AND NORTHERN PART OF SCS.
ISOLATED SQ SH AND TS OVER GULF OF TONKIN, THE CENTRAL PART OF
SCS, SEAS NEAR BORNEO, STRAIT OF MALACCA AND GULF OF THAILAND.
SEA FOG/REDUCED VISIBILITY
VISIBILITY 2000 M IN SQ SH AND TS.
ZCZC
FSCI40 BENN 110000 59227 00101 10000 21728 30100 40000 51829 60101 70000 82029
90101 A0000 B2030 C0103 D0000 E2028=NNNNZCZC
FSCI40 BENN 110600  RRH
59061 00201 10000 21727 30101 40000 52029 60103 70000 82031
90101 A0000 B2132 C0101 D0000 E2233=NNNN
ZCZC
FSCI40 BENN 110600 
59064 00102 10000 21827 30101 40000 52029 60103 70000 82031
90101 A0000 B2234 C0101 D0000 E2234=NNNN

解决方案 »

  1.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
      tmpStrs, tmpFiles: TStringList;
      tmpS: String;
      i: integer;
      SaveFlag: Boolean;
    begin
      tmpStrs := TStringList.Create;
      tmpFiles := TStringList.Create;
      try
        tmpFiles.LoadFromFile('E:\test.txt');
        SaveFlag := False;
        for i:=0 to tmpFiles.Count-1 do
        begin
          tmpS := Trim(tmpFiles.Strings[i]);
          if tmpS='' then Continue;
          if (Pos('FSCI40', tmpS)>0) and (Pos('110600', tmpS)>0) then
          begin
            SaveFlag := True;
            tmpStrs.Add(tmpS);
          end
          else if (Pos('NNNN', tmpS)>0) and SaveFlag then
          begin
            SaveFlag := False;
            tmpStrs.Add(tmpS);
          end else if SaveFlag then
             tmpStrs.Add(tmpS);
        end;    tmpStrs.SaveToFile('E:\My.txt');
      finally
        tmpStrs.Free;
        tmpFiles.Free;
      end;
    end;
      

  2.   

    谢谢DunDao(所有这一切都是会有报应的)!