что вы подразумеваете под нечетной строкой? Вы хотите удалить лишнее (нежелательное) слово из всего документа?
antzshrek
4
Каждые нечетные строки, как 1,3,5,7,9,11,13,15 .... и так далее.
Nithin N
1
Попробуйте заменить на новую строку (регулярное выражение): [\ n. + \ N]
Арт Гертнер,
@ArtGertner Я пытался с выражением не работает.
Nithin N
1
Я записал бы глупый макрос: стрелка вниз, стрелка сдвига вниз, del.
chingNotCHing
Ответы:
23
Вы можете сделать это с помощью поиска и замены:
Откройте диалог замены ( Ctrl+ H)
Выберите «Регулярное выражение»
Найти то, что:
.+\r\n(.+(\r\n|$))
Заменить: $1
Нажмите «Заменить все»
Заметки:
В зависимости от вашей ОС вам нужно использовать \r(старый Mac), \n(Unix, OS X) или \r\n(Windows), чтобы соответствовать концу строки, или просто использовать, \Rкоторый должен работать везде (спасибо за @Aurel Bílý)
\n|$ необходимо иметь правильный результат даже в конце файла
По умолчанию Notepad ++ заменяет фактическую позицию курсора на конец файла. Убедитесь, что поместили курсор в начало файла.
(Вы также можете проверить «обтекание», но в этом случае он сначала удалит строку, в которой находится ваш курсор, вместо того, чтобы действительно искать нечетную строку.)
Это почти работает, но не редактирует первый набор нечетных строк, скажем, от 1 до 15.
Nithin N
Измените скриншот с большей прозрачностью этого окна замены.
Biswapriyo
11
Обратите внимание, что \rконец строки встречается очень редко - он действительно использовался в Mac OS, но в классических версиях до OS-X. В OS X и далее окончания строк \n, как и любой здравомыслящий Unix. Также \Rлучше подходит для соответствия любому концу строки.
Аурел Били
@ AurelBílý Это правда, однако Notepad ++ работает только на Windows, поэтому переносимость здесь не является большой проблемой.
Роб
18
Ctrl+H
Найти то, что: .+\R(.+)
Заменить: $1
Replace all
Объяснение:
.+ : 1 or more any character but newline
\R : any kind of linebreak (ie. \r, \n, \r\n)
( : start group 1
.+ : 1 or more any character but newline
) : end group 1
@NithinN: имейте в виду, что принятый ответ не работает с файлами Linux (т.е. \n
Toto
7
Откройте файл и поместите текстовый курсор в начале первой строки.
Меню → Макрос → Начать запись
Нажмите Endклавишу на клавиатуре
Shift+ Home, тогдаbackspace
Down
Backspace
Down
Меню → Макрос → Остановить запись
Меню → Макрос → Запуск макроса несколько раз → Установите флажок Выполнить до конца файла
щелчок Run
В основном выполните действие один раз, чтобы удалить нечетную строку, затем заставьте программу повторить действие до конца файла. Это может быть использовано для решения многих проблем!
Мне кажется, что это удалить четные строки (2,4,6 ...), а не нечетные.
Матэ Юхас,
1
Это правильно. Однако удалить четные строки проще, и проблему можно решить, добавив пустую строку в начале файла
Art
@ArtGertner должен быть заменен \ r \ n. + \ R \ n на \ r \ n
chingNotCHing
@chingNotCHing, хороший! Я обновил свой ответ
Арт Гертнер,
@ArtGertner Как вы указали, он работает только для четных линий. Но для большого набора данных это не редактирование для первого набора данных, скажем, с 1-15-й строки.
Ответы:
Вы можете сделать это с помощью поиска и замены:
.+\r\n(.+(\r\n|$))
$1
Заметки:
\r
(старый Mac),\n
(Unix, OS X) или\r\n
(Windows), чтобы соответствовать концу строки, или просто использовать,\R
который должен работать везде (спасибо за @Aurel Bílý)\n|$
необходимо иметь правильный результат даже в конце файлаисточник
\r
конец строки встречается очень редко - он действительно использовался в Mac OS, но в классических версиях до OS-X. В OS X и далее окончания строк\n
, как и любой здравомыслящий Unix. Также\R
лучше подходит для соответствия любому концу строки..+\R(.+)
$1
Объяснение:
. matches newline
Результат для данного примера:
источник
\n
В основном выполните действие один раз, чтобы удалить нечетную строку, затем заставьте программу повторить действие до конца файла. Это может быть использовано для решения многих проблем!
источник
Я только что проверил на компьютере моего коллеги, который на самом деле использует Notepad ++. Попробуй это:
источник