analizar un carácter de números que comienza con 0 y mantener el cero inicialHola,
Quiero hacer un vector de valores que provienen de una columna en un datatable. Algunos de esos valores comienzan con el número cero. Cuando uso el comando parse, trunca el cero desde el principio del número. La columna se define como una columna de caracteres. El script que estoy usando es eval (parse (columna (DTI, "bar_pen") [i]))); ¿Cómo puedo hacer esto y mantener mis ceros iniciales?
Gracias,
Tova
Re: analizar un carácter de números que comienza con 0 y manteniendo el cero inicialgracias, esa es una solución mucho mejor que la que encontré ...
Re: analizar un carácter de números que comienza con 0 y manteniendo el cero inicialdt = New Table( "Untitled",
Add Rows( 3 ),
New Column( "Bar_Pen", Character, Set Values( {"0001", "9999", "0900"} ) )
);
list = dt:Bar_pen << getvalues;
show(list); // {"0001", "9999", "0900"};
v = dt:Bar_Pen[3];
show(v, parse(v), char(parse(v))); // "0900", 900, "900"
Es posible que no necesite realizar el análisis que convierte los datos de caracteres en código (que es solo un número, probablemente). Entonces no necesita evaluar el código analizado, entonces no necesita convertir la respuesta evaluada ( un número) de nuevo a una cadena. Si es necesario limpiar los valores debido a errores de entrada de datos, la evaluación / análisis puede parecer que funciona, pero fallará si un usuario malicioso coloca un código incorrecto en la tabla.
Re: analizar un carácter de números que comienza con 0 y manteniendo el cero inicialesto es lo que funcionó para mí al final:
Repetir ("0", 4 - longitud (char (eval (parse (columna (DTI, "Bar_Pen") [i])))))) || char (eval (parse (columna (DTI, "Bar_Pen") [i])));