Develop and Download Open Source Software

Browse CVS Repository

Diff of /gikonavigoeson/gikonavi/AbonUnit.pas

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.13 by hi_, Sun Sep 14 16:35:40 2003 UTC revision 1.14 by h677, Thu Sep 18 10:02:48 2003 UTC
# Line 229  var Line 229  var
229      ret : Integer;      ret : Integer;
230      bufstl : TStringList;      bufstl : TStringList;
231      i : Integer;      i : Integer;
232        pos : Integer;
233        buftoken : String;
234  begin  begin
235        pos := 0;
236      bufstl := TStringList.Create;      bufstl := TStringList.Create;
237      bufstl.Delimiter := #9;  //区切り子を’タブ’に設定      try
238      bufstl.DelimitedText := argline;          if Length(argline) > 0 then begin
239      ret := bufstl.Count;                  pos := AnsiPos(#9,argline);
240      SetLength(Ftokens[index],ret);              while pos <> 0 DO begin
241      for i := 0 to bufstl.Count - 1  do begin                  buftoken := Copy(argline,1,pos-1);
242          Ftokens[index][i] := bufstl.Strings[i];                  Delete(argline,1,pos);
243                    if Length(buftoken) > 0 then begin
244                                    bufstl.Append(buftoken);
245                    end;
246                        pos := AnsiPos(#9,argline);
247                end;
248                    if Length(argline) > 0 then begin
249                            bufstl.Append(argline);
250                end;
251                    ret := bufstl.Count;
252                    SetLength(Ftokens[index],ret);
253                    for i := 0 to bufstl.Count - 1  do begin
254                            Ftokens[index][i] := bufstl.Strings[i];
255                    end;
256            end;
257        finally
258            bufstl.Free;
259      end;      end;
     bufstl.Free;  
260    
261  end;  end;
262  //Debug用ちゃんとNGワードを拾えているか  //Debug用ちゃんとNGワードを拾えているか
# Line 271  begin Line 289  begin
289      hit := false;      hit := false;
290      if AnsiPos(FAbonString,line) <> 1 then begin      if AnsiPos(FAbonString,line) <> 1 then begin
291          for lines := 0 to High(Ftokens) do begin          for lines := 0 to High(Ftokens) do begin
292              hit := true;              if High(Ftokens[lines]) > 0 then begin
293              bufline := line;                      hit := true;
294              for cells := 0 to High(Ftokens[lines]) do begin                  bufline := line;
295                  if AnsiPos(Ftokens[lines][cells],bufline) = 0 then begin                      for cells := 0 to High(Ftokens[lines]) do begin
296                      hit := false;                      if AnsiPos(Ftokens[lines][cells],bufline) = 0 then begin
297                      break;                              hit := false;
298                  end else begin                          break;
299                      Delete(bufline,AnsiPos(Ftokens[lines][cells],bufline),Length(Ftokens[lines][cells]));                          end else begin
300                  end;                          Delete(bufline,AnsiPos(Ftokens[lines][cells],bufline),Length(Ftokens[lines][cells]));
301              end;                          end;
302              if hit = true then begin                  end;
303                  break;                      if hit = true then begin
304                        break;
305                    end;
306                end else begin
307                    hit := false;
308              end;              end;
309          end;          end;
310      end;      end;

Legend:
Removed from v.1.13  
changed lines
  Added in v.1.14

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26