Массовая манипуляция текстом?

Массовая манипуляция текстом?

У меня есть текстовый файл из пары сотен тысяч слов. Например:

word1
word2
etc

Я хочу узнать, какую программу я могу использовать, чтобы легко:

  1. Добавьте «ПЕРЕДНИЙ» в начало текста и
  2. Добавьте «НАЗАД» в конец текста.

Итак, я бы пришел к следующему:

FRONTword1BACK
FRONTword2BACK
FRONTetcBACK

Я могу легко сделать это, закодировав его в PHP, но я хочу знать, есть ли более быстрый способ, с правильным инструментом? Возможно, это можно сделать в чем-то вроде notepad++, или scite, или, в худшем случае, в командной строке Linux.

Примечание: я бы предпочел визуальный редактор на базе WINDOWS.

решение1

В NotePad++ выполните замену регулярного выражения:

Найти что: ^(.*)$

Заменить на: FRONT\1BACK

Что происходит с точки зрения регулярных выражений?

^ - соответствует началу строки
$ - соответствует концу строки
.* - соответствует всему, что находится между ними (в скобках, чтобы обозначить как группу)

Замена — это просто то, что вы хотите добавить до и после исправления, а значение первой группы регулярных выражений (т. е. все, что находится в строке) помещается посередине.

решение2

VIM работает на Windows. Если вы никогда им не пользовались, у вас могут возникнуть проблемы с запуском, но если вы изучите основы, вся магия станет доступной.

1) Добавьте что-нибудь перед первым символом в каждой строке:

  • Перейти к первой строке, первому столбцу.
  • Ctrl+vCtrl+q для входа в режим визуального блока.
  • Ctrl+g для перехода к последней строке.
  • Shift+i для входа в режим визуальной вставки.
  • Введите текст и нажмите Esc. Текст должен появиться во всех строках.

2) Добавьте что-нибудь в конец. Если все слова имеют одинаковую длину, вы можете сделать так, как описано выше. Если нет, используйте макросы.

  • Перейти к первой строке.
  • Нажмите 'q' дважды. Первая кнопка запускает запись, вторая выбирает буфер для записи (может быть любой буквой).
  • Shift+a, чтобы начать вставку текста в конце строки.
  • Введите желаемый текст.
  • Нажмите Esc, чтобы остановить вставку.
  • Стрелка вниз или «j» для перехода на следующую строку.
  • Нажмите «q» еще раз, чтобы остановить запись.
  • Теперь вы можете воспроизвести записанное действие, введя «@@» или «@q». «@@» воспроизводит последнюю запись, «@q» воспроизводит ту, что находится в буфере «q» (то же самое в этом примере).
  • Введите «1000@@», чтобы повторить макрос 1000 раз.

Связанный контент