Título: Cambiar separador de campo Publicado por: morsas en 17 Septiembre 2013, 19:55 pm Hola tengo un archivo de texto cuyo delimitador de columnas es un espacio y necesito cambiarlo por una coma o barra vertical, es posible realizar esto? muestro el archivo como esta ahora:
05052013 20:10 12345 12310 12345678 00:00:24 5 05222013 10:15 12346 12311 5512345690 00:00:20 5 5800 y cómo necesito que quede: 05052013,20:10,12345,12310,12345678 ,00:00:24,5, 05222013,10:15,12346,12311,5512345690 ,00:00:20,5,5800 La columna mas "ancha" es de 20 caractéres Saludos y muchas gracias de antemano. Título: Re: Cambiar separador de campo Publicado por: Almapa en 17 Septiembre 2013, 22:56 pm Aunque no has determinado que lenguaje de scripting quieres programarlo en batch seria algo así:
Código: @echo off Donde el documento1 es donde está lo que quieres cambiar y documento2.txt el documento de salida. Como verás está hecho para que lo cambie por una "," no por un "|". Un saludo! Título: Re: Cambiar separador de campo Publicado por: morsas en 18 Septiembre 2013, 05:47 am Una disculpa, el programa lo voy a realizar en DOS, ya lo corrí y no funciona, aparece la ventana de dos pero se queda estatica, sin ninguna leyenda.
Título: Re: Cambiar separador de campo Publicado por: Almapa en 18 Septiembre 2013, 07:24 am Mira a ver si así te sirve, a mi me funciona bien. Para introducir el archivo arrástralo sobre la ventana de la consola.
Código: @echo off Título: Re: Cambiar separador de campo Publicado por: Eleкtro en 18 Septiembre 2013, 12:04 pm Te aconsejo que utilices un lenguaje con soporte para reemplazar mediante expresiones regulares (es decir, cualquier otro lenguaje menos Batch).
Código: (\s{1})[^.] Puedes utilizar el subgrupo 1 de ese RegEx. Saludos! Título: Re: Cambiar separador de campo Publicado por: morsas en 19 Septiembre 2013, 17:36 pm Es correcto Almapa, ya funciona pero quedó un detalle, no pone la coma que debe ir al final de la primera linea:
05052013,20:10,12345,12310,12345678 ,00:00:24,5 05222013,10:15,12346,12311,5512345690 ,00:00:20,5,5800 05282013,10:10,12347,12312,5512345691 ,00:00:25,5,5700 crees que tenga solucion? ;-) Título: Re: Cambiar separador de campo Publicado por: Almapa en 20 Septiembre 2013, 11:27 am No se si habrás aprendido mucho con esto pero bueno, espero que por lo menos sepas que hace cada línea de código o de lo contrario te informes.
Código: @echo off Un saludo. |