1

Извините за грубый английский, я пытаюсь визуализировать свой вопрос.

У меня есть два списка слов, по одному в строке, каждый список в отдельном файле:

Файл 1:

белый
fehér
зеленый
zöld
красный
Пирос

Файл 2:

белый
Бланко
зеленый
верде
красный
Roja

Мне нужно объединить эти списки, удалив все дубликаты и создать новый файл, содержащий следующее:

fehér
Бланко
zöld
верде
Пирос
Roja

Я новичок в Notepad++ и не могу решить эту проблему.

2 ответа2

1

Насколько я понимаю, у вас есть два файла перевода: с английского на венгерский и с английского на итальянский (?). И что вы хотите, чтобы использовать английский в качестве ключа, чтобы объединить итальянский и венгерский, правильно?

Мое решение работает только в том случае, если у вас не так много файлов для конвертации, но там, где возможно выполнить шаги вручную. Важно, чтобы вы проверяли, что шаблон чередующихся языков верен для каждой пары в обоих файлах.

Сначала откройте оба файла в Notepadd++ и откройте Find/Replace, нажав CTRL-F или Edit-> Find/Replace ... Затем нажмите кнопку замены. Выберите метод поиска по регулярному выражению и введите следующее для поиска:

^(.*)\r\n(.*)$

С помощью find next вы можете проверить, выбирает ли он две строки одновременно.

Для замены введите:

\1 \2

Поменяйте курсор на начало файла и попробуйте несколько раз нажать "Найти" и "Заменить". Следует записать слова от до последовательных строк в одну, разделенную пробелом. Сделайте это для обоих файлов, как уже упоминалось. Теперь у вас есть ключевые значения (если я правильно понимаю проблему) в обоих файлах в первом столбце. Если первый столбец в обоих файлах теперь содержит одинаковые слова в соответствующих строках, вы можете продолжить. Они должны выглядеть так:

white fehér
green zöld
red piros

white blanco
green verde
red roja

Вы, что первый столбец одинаков в обоих файлах. Теперь вы используете режим столбца (нажав alt при выборе чего-либо из второго файла). Выберите что-нибудь во втором файле. Нажмите CTRL-C (Правка-> Копировать). Откройте первую и вставьте так много пробелов после конца первой строки, что она превышает самую длинную строку в этом файле. Затем добавьте содержимое второго, нажав CTRL-V. Должно выглядеть так:

white fehér white blanco
green zöld green verde
red piros red roja

Теперь вы должны удалить ключи путем поиска / замены. Найти:

^([^ ]*) ([^ ]*) *(.*) (.*)$

заменить:

\2\r\n\4

Теперь должно выглядеть так:

fehér
blanco
zöld
verde
piros
roja

Вуаля. Надеюсь, что это помогло!

1

Это похоже на повторяющийся вопрос в stackoverflow: https://stackoverflow.com/questions/3958350/removing-duplicate-rows-in-notepad

Основным решением является установка плагина TextFX. Затем поместите все содержимое в один файл и используйте TextFX для сортировки и удаления дубликатов.

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