Ahora que lo pienso... me parece que le sugerí matar una mosca con un misil, ademas le puede traer problemas... Con respecto a lo de los comentarios, no conozco si Delphi trae alguna herramienta con este propósito, pero se puede hacer un pequeño procedure con este propósito, ya quen hay que preocuparse por manejar los tipos de datos, comentarios...:
Código:
procedure ParseText(Text: PChar; const AResult: TStrings);
var
L,
E: PChar;
R: string;
begin
L := Text;
E := StrEnd(Text);
while Text < E do begin
Inc(Text);
if not (Text^ in ['A'..'Z', 'a'..'z', '_']) then
begin
if L <> Text Then
begin
SetString(R, L, Text-L);
AResult.Add(R);
end;
L := Text + 1;
end;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ParseText('Delphi es una herramienta Formidable!', Memo1.Lines);
end;
Aclaro que lo hice recién y no lo probé en profundidad!!!
Mi Procedure Original (Por si a alguien le gusta mas con strings):
Código:
procedure ParseText(AText: string; const AResult: TStrings);
var
iLen,
iLastPos,
iPos: Integer;
begin
iLastPos := 1;
AResult.Clear;
AText := AText + ' '; { Para evitar preguntar reiteradamente por iPos = iLen }
iLen := Length(AText);
for iPos := 1 to iLen do
if not(AText[iPos] in ['A'..'Z', 'a'..'z', '_']) Then
begin
if (iPos <> iLastPos) Then
AResult.Add(Copy(AText, iLastPos, iPos-iLastPos));
iLastPos := iPos+1;
end;
end;
Saludos!