Estoy tratando de reposicionar cada línea en un archivo .txt de la siguiente manera a continuación. Sin embargo, no tengo idea de cómo hacerlo. ¿Es esto posible con Notepad ++?
De
apple
| [email protected] | orange aplery| [email protected] |
sandwich de col|[email protected]|turkey
A
apple|orange|[email protected]
celery|cabbage|[email protected]
sandwich|turkey|[email protected]
Respuestas:
Reordenar columnas en un archivo de texto
Sí, esto es posible dentro de Vanilla
Notepad++
, aunque como se señaló, también hay complementos que lo harán. Un enfoque mejor (más robusto) podría ser utilizar algunas herramientas de procesamiento de texto de línea de comandos, pero si necesita una solución rápida y sucia, puede encontrarla a continuación:Suponiendo su entrada exacta (
col1|col2|col3
, delimitador de tubería, sin tuberíacol2
):Encuentra :
(.*?)\|(.*?)\|(.*)
Reemplazar :
\1|\3|\2
funciona para mí aquí
Notepad++
, construido en enero de 2015. Algo brutal, pero funciona.Explicación:
.*
- coincide con cualquier carácter (excepto nueva línea), entre cero e ilimitado veces.*?
- coincide con cualquier personaje (excepto la nueva línea) como arriba, de una manera no codiciosa (es decir, coincide lo menos posible )(.*)
- los corchetes indican el grupo de captura de arriba (para usar en Reemplazar como\1
, por ejemplo\2
,\3
etc.)\|
-\
escapa pipe (|
) para que coincida literalmente\1|\3|\2
- imprimir el primer grupo coincidente, tubería, tercer grupo coincidente, tubería, segundo grupo coincidentefuente
.*
no codicioso, es decir,.*?
para evitar muchos retrocesos??
personaje parece una tontería.(.*?)|(.*?)|(.*)
funciona para mi.