•  
Создано: 01.08.2010 20:30:17 · Исправлено: 01.08.2010 20:30:17 · Прочтений: 3272

// 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 "?". 
}