Я использую Notapad++, и у меня есть две ситуации, в которых я застрял, относительно больших текстовых файлов, в которых есть списки спряжения глаголов для моих студентов, для использования с базой данных приложения для Android.

Ситуация 1 Есть текстовые файлы, в которых я хочу переключаться между каждыми 2 строками, чтобы строка 2 шла первой перед строкой 1, а строка 4 - перед строкой 3, и так далее для остальной части текстового документа. Я имею в виду, вместо строки 1,2,3,4,5,6 они будут 2,1,4,3,6,5 и т.д.

Ситуация 2 В других текстовых файлах я хочу объединить каждые 4 строки в одну строку следующим образом: начните со строки 4, затем добавьте знак «-», затем текст строки 2, знак «-», затем текст строки 1, затем запятая, затем текст строки 3.

Извините, если это сбивает с толку. Вот пример.

Мне нужно это:

Причастие прошедшего времени
прошлое
Имея в виду
глагол

чтобы все стали одной линией вот так:

глагол - прошлое - прошлое причастие, значение

Фрагмент первого файла:

تعليمات
инструкции
مهندس
инженер
أرضية
этаж
والدين
родители

Фрагмент второго файла:

изменено
изменено
يتغير
менять
расслабленный
расслабленный
يسترخى
расслабиться
приглашенный
приглашенный
يدعو
приглашать

Заранее большое спасибо за вашу помощь.

3 ответа3

1

Situation2:

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

Мы можем достичь этого в два этапа:

Шаг 1:

Сначала мы можем поменять местами значения:

apple
ball
cat
doll

Найти что :(.+)\ R \ n(.+)

Заменить на :\2\r\n\1

выход:

ball
apple
doll
cat

Это выберет линии в порядке 2 и поменяет их местами. Вы можете увеличить это выражение следующим образом

apple
ball
cat
doll

Найти что :(.+)\ R \ n(.+)\ R \ n(.+)

Заменить на :\3\r\n\1

выход:

cat
ball
apple
doll

Выше нужно заблокировать три строки и заменить 3-ю и 1-ю строку

Примечание: пожалуйста, не выбирайте опцию "обернуть вокруг"

Шаг 2:

Теперь можно слить строку со следующим выражением

ball
apple
doll
cat

Найти что :(.+)\ R \ n(.+)

Заменить на :\1\2

ball apple
doll cat

Надеюсь это поможет!

0

Попробуй это:

Ситуация 1:

تعليمات
instructions
مهندس 
engineer
أرضية 
floor 

Нажмите Ctrl+H, чтобы открыть диалоговое окно «Заменить», отметьте «Регулярное выражение» и введите приведенные ниже выражения.

Найти что : (.+)\ R \ n (.+)\ R \ n (.+)

Заменить на: \1 \t \2 \t

Выход:

تعليمات instructions
مهندس engineer
أرضية floor 

Ситуация 2:

Past participle
Past
Meaning
Verb

Нажмите Ctrl+H, чтобы открыть диалоговое окно «Заменить», отметьте «Регулярное выражение» и введите приведенные ниже выражения.

Найти что :(.+)\ R \ n(.+)\ R \ n(.+)\ R \ n(.+)

Заменить на:\1-\2-\3,\4

(вы можете поменять номера по вашему желанию)

выход:

Past participle-Past-Meaning,Verb

Надеюсь это поможет!

0

Хорошо, мне удалось сделать это сейчас с помощью макросов в Notepad++.

Просто для пояснения, макрос позволяет вам повторять набор действий снова (и снова ...), но вам нужно будет "научить" Notepad++, что именно вы хотите сделать в первую очередь. Поэтому строго следуйте приведенным ниже инструкциям, иначе вы можете получить нерабочий результат.

Я не могу понять, как (или если это действительно возможно) экспортировать макрос в формат, который я могу опубликовать здесь, поэтому я расскажу о методе, который я использовал, шаг за шагом.

Обратите внимание, что для простоты я объясню только, как работать с макросами для вашего первого случая (вашего первого файла), чтобы не повторять себя без необходимости. Кроме того, убедитесь, что у вас есть резервная копия исходного файла, прежде чем пытаться сделать это на случай, если что-то работает не так, как задумано.

Хорошо, здесь идет:

  1. Откройте Notepad++, откройте ваш файл.

  2. Убедитесь, что вы находитесь в начале вашей первой строки данных, то есть первой строки с первым словом в вашем словаре в вашем случае.

  3. В меню "Макрос" выберите "Начать запись"

  4. Делайте то, что вам нужно, только с первым набором данных. В случае с вашим первым файлом это будет что-то вроде:

    • отметить первую строку
    • вырезать с помощью Ctrl + X
    • перейти к началу следующей строки
    • вставьте вырезанную строку с помощью Ctrl + V
    • перейти к началу следующей строки

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

  1. Теперь из меню "Макро" выберите "Остановить запись"

  2. В меню "Макрос" выберите "Сохранить записанный макрос", дайте ему соответствующее имя и нажмите "ОК".

  3. Теперь (с курсором в начале следующей строки) выберите "Макрос"> "Запускать макрос несколько раз", выберите макрос, сохраненный на шаге 6, выберите "Выполнить до конца файла", затем нажмите "ОК".

Макрос теперь будет работать через ваш файл. Не забудьте дать ему время, чтобы закончить, если ваш файл большой! Теперь вы должны увидеть, что макрос переместил все ваши строки вниз по мере необходимости.

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

Надеюсь, это было полезно!

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