unit uStringsUtils;
interface
uses
Classes;
const
DISPLAY_EUROS2 = '#,0.00 <20>';
DISPLAY_PORCENTAJE = '#,0.00%';
procedure StringToStrings(Source:string; Delimiter:char; Target:TStrings);
function StringsToString(Source:TStrings; Delimiter:char):string;
function EsCadenaVacia(const S: AnsiString): Boolean; overload;
function EsCadenaVacia(const S: Variant): Boolean; overload;
function EsNumerico(Cadena: String) : Boolean;
function EscaparCadena (Cadena: String): String;
implementation
Variants, SysUtils, JclStrings;
{ Convierte una cadena con items separados con un delimitador en un TString }
var i: integer;
begin
for i:=1 to length(Source) do
if Source[ i ] = Delimiter then Source[ i ]:=#10;
Target.Text:=Source;
end;
{ Convierte un TString en una cadena de items separados con un delimitador }
Result:='';
for i:=0 to Source.Count-1 do
Result:=Result + Delimiter + Source[ i ];
if Result<>'' then Delete(Result, 1, 1)
function EsCadenaVacia(const S: AnsiString): Boolean;
Result := (Length(Trim(S)) = 0)
Result := True;
if VarIsNull(S) then
Exit;
Result := EsCadenaVacia(VarToStr(S));
var
Codigo: Integer;
Valor: Double;
Val(Cadena, Valor, Codigo);
Result := (Codigo = 0)
Result := StringReplace(Cadena, '''', '\\''', []);
Result := StrStringToEscaped(Result);
end.