Hola velia, yo tiraria por lo directo, aunque seguro que hay maneras mas elegantes:
Código Delphi
[-]
procedure TForm1.Button1Click(Sender: TObject);
var
sl1, sl2 : TStringList;
i : integer;
begin
sl1 := TStringList.Create;
sl2 := TstringList.Create;
if not Opendialog1.execute then exit;
sl1.LoadFromFile(Opendialog1.Filename);
sl1.text := stringreplace(sl1.text,#32,'-espacio-',[rfIgnorecase,rfReplaceAll]);
sl1.commatext := stringreplace(sl1.text,#124,', ',[rfIgnorecase,rfReplaceAll]);
sl2.commatext := sl1.commatext;
sl2.text := stringreplace(sl1.commatext,'-espacio-',' ',[rfIgnorecase,rfReplaceAll]);
for i := 0 to sl2.count - 1 do showmessage(sl2[i]);
sl1.free;
sl2.free;
end;
lo he hecho a lo rapido, seguro que se puede optimizar. saludos.