¿Manipulación masiva de textos?

¿Manipulación masiva de textos?

Tengo un archivo de texto de unos cientos de miles de palabras. P.ej:

word1
word2
etc

Quiero saber qué programa puedo usar para fácilmente:

  1. Agregue "FRONT" al frente del texto y
  2. Añade "BACK" al final del texto.

Entonces terminaría con:

FRONTword1BACK
FRONTword2BACK
FRONTetcBACK

Puedo hacer esto fácilmente codificándolo en PHP, pero quiero saber si existe una manera más rápida, con la herramienta correcta. Quizás esto se pueda hacer en algo como notepad++, o scite, o en el peor de los casos, la línea de comandos de Linux.

Nota: Preferiría un editor visual basado en WINDOWS.

Respuesta1

En NotePad++ reemplace una expresión regular:

Encuentra qué: ^(.*)$

Reemplazar con: DELANTERO\1TRASERO

¿Qué está pasando en términos de expresiones regulares?

^ - coincide con el inicio de la línea
$ - coincide con el final de la línea
.* - coincide con todo lo que hay entre paréntesis (entre paréntesis para marcarlo como un grupo)

El reemplazo es simplemente lo que desea corregir antes y después y el valor del primer grupo de expresiones regulares (es decir, todo lo que está en la línea) intercalado en el medio.

Respuesta2

VIM funciona en Windows. Si nunca lo usaste puede que tengas problemas para iniciar, pero si aprendes lo básico toda la magia está disponible.

1) Agrega algo delante del primer carácter en cada línea:

  • Vaya a la primera línea, primera columna.
  • Ctrl+vCtrl+q para ingresar al modo de bloqueo visual.
  • Ctrl+g para ir a la última línea.
  • Shift+i para ingresar al modo de inserción visual.
  • Ingrese el texto y presione Esc. El texto debe aparecer en todas las líneas.

2) Agrega algo al final. Si todas las palabras tienen la misma longitud, puede hacer lo descrito anteriormente. Si no, utilice macros.

  • Ir a la primera línea.
  • Presione 'q' dos veces. Primero comienza a grabar, segundo elige un búfer para grabar (puede ser cualquier letra).
  • Shift+a para comenzar a insertar texto al final de la línea.
  • Escriba el texto deseado.
  • Esc para dejar de insertar.
  • Flecha hacia abajo o 'j' para ir a la siguiente línea.
  • 'q' nuevamente para detener la grabación.
  • Ahora puedes reproducir la acción grabada escribiendo '@@' o '@q'. '@@' reproduce el último registro, '@q' reproduce el que se encuentra en el búfer 'q' (lo mismo en este ejemplo).
  • Escriba '1000@@' para reproducir la macro 1000 veces.

información relacionada