1

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

word1
word2
etc

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

  1. Добавьте "FRONT" в начале текста и
  2. Добавьте "BACK" в конец текста

Так что я бы закончил с:

FRONTword1BACK
FRONTword2BACK
FRONTetcBACK

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

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

2 ответа2

3

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

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

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

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

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

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

2

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

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

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

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

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .