token.pas

来自「Last change: 2008-02-03 This is the sou」· PAS 代码 · 共 53 行

PAS
53
字号
unit Token;

interface

function GetFirstToken(Line: String): String;
function GetNextToken: String;
function GetRemainingTokens: String;

implementation

var
  TokenString: String;

function GetFirstToken(Line: String): String;
begin
  TokenString := Line;
  Result := GetNextToken;
end;

function GetNextToken: String;
var
  i, j: Integer;
begin
  Result := '';
  if TokenString <> '' then
  begin
    i := 1;
    while TokenString[i] in [#9, #10, #13, ' '] do
      Inc(i);
    j := 0;
    while not (TokenString[i + j] in [#0, #9, #10, #13, ' ']) do
      Inc(j);
    Result := Copy(TokenString, i, j);
    TokenString := Copy(TokenString, i + j, High(Integer));
  end;
end;

function GetRemainingTokens: String;
var
  i: Integer;
begin
  Result := '';
  if TokenString <> '' then
  begin
    i := 1;
    while TokenString[i] in [#9, #10, #13, ' '] do
      Inc(i);
    Result := Copy(TokenString, i, High(Integer));
  end;
end;

end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?