...parse a string?

Author: Johan Stokking
Homepage: http://johan.stokking.nl/

Category: Strings

// Parse a string, for example:
// How do I get the "B" from "A|B|C|D|E|F"?

function Parse(Char, S: string; Count: Integer): string;
var
  
I: Integer;
  T: string;
begin
  if 
S[Length(S)] <> Char then
    
S := S + Char;
  for I := 1 to Count do
  begin
    
T := Copy(S, 0, Pos(Char, S) - 1);
    S := Copy(S, Pos(Char, S) + 1, Length(S));
  end;
  Result := T;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  
ShowMessage(Parse('|', 'A|B|C|D|E|F', 2));
end;

{
  Parameters:

  Parse([Character, for example "|"], [The string],
  [The number, the "B" is the 2nd part of the string]);

  This function is handy to use when sending data over the internet,
  for example a chat program: Name|Text. Note: Be sure there's no "Char" in the string!
  Use a unused character like "|" or "×".
}

 

printed from
www.swissdelphicenter.ch
developers knowledge base