Найдите CRLF в блокноте ++

Указатель NULL - это тот, который указывает на никуда. Когда вы разыскиваете указатель p, вы говорите «дайте мне данные в месте, хранящемся в« p ». Когда p является нулевым указателем, местоположение, хранящееся в p, является nowhere, вы говорите «Дайте мне данные в месте« нигде ». Очевидно, он не может этого сделать, поэтому он выбрасывает NULL pointer exception.

В общем, это потому, что что-то не было правильно инициализировано.

310
задан Peter Mortensen 10 June 2018 в 21:59
поделиться

7 ответов

[\r\n]+ должен работать также

Обновление 26-го марта 2012, дата выпуска [1 172] Блокнот ++ 6.0 :

OMG, это на самом деле работает теперь!!!

PCRE regexp in Notepad++

<час>

Исходный ответ 2008 (Блокнот ++ 4.x) - 2009-2010-2011 (Блокнот ++ 5.x)

На самом деле не, это, кажется, не работает с regexp...

, Но если у Вас есть Блокнот ++ 5.x, можно использовать' , расширился ' режим поиска, и ищите \r\n. Это действительно находит весь Ваш CRLF.

(я понимаю, это - тот же ответ, чем другие, но снова, 'расширенный режим' только доступен с Блокнотом ++ 4.9, 5.x и больше)

<час>

С апреля 2009, у Вас есть статья Wiki о Блокноте ++ сайт по этой теме:
" , Как Заменить Концы строки, таким образом изменив расположение строки ".
(упомянутый [1 127] georgiecasey в его ответ ниже )

Некоторые соответствующие извлечения включает следующие поисковые процессы:

Простой поиск ( Ctrl + F ), Режим поиска = Normal

можно выбрать EOL в окне редактирования.

  • Просто перемещают курсор до конца строки и вводят Сдвиг + Право Стрелка.
  • или, для выбора EOL с мышью, запускаются только в конце строки и перетаскивают к запуску следующей строки; перетаскивание направо от эти EOL не будет работать. Можно вручную скопировать EOL и вставить его в поле для файлов Unix (LF - только).

Простой поиск (Ctrl+F), Режим поиска = Расширенный

шоу опции "Extended" \n и \r как символы, которые могли быть подобраны.
Как с Нормальным режимом поиска, Блокнот ++ ищет точный символ.
Поиск \r в файле формата UNIX ничего не найдет, но поиск \n будет. Точно так же файл формата Macintosh будет содержать \r, но не \n.

Простой поиск (Ctrl+F), Режим поиска = Регулярное выражение

Регулярные выражения используют символы ^ и $ для привязки строки совпадения к началу или концу строки. Например, поиск return;$ найдет случаи "возврата"; это происходит без последующего текста на той же самой строке. Символы привязки работают тождественно во всех форматах файлов.
'.' точечный метасимвол не соответствует окончаниям строки.

[Протестированный в Блокноте ++ 5.8.5]: поиск регулярного выражения с явным \r или \n не работает (вопреки документация Scintilla ) .
Ни один не делает поиск на явном (вставляемом) LF, или на (невидимых) символах EOL, помещенных в поле, когда EOL выбран. Расширенный поиск ( Ctrl + R ) без regexp

Ctrl + M вставит что-то, что соответствует новым строкам. Они будут заменены строкой замены.
я рекомендую этот метод как самое надежное, если Вы действительно не должны использовать regex.
Как пример, для удаления каждой второй новой строки в двойном расположенном с интервалами файле, вводят Ctrl + M дважды в поле строки поиска, и однажды в поле строки замены.

Расширенный поиск ( Ctrl + R ) с Regexp.

Ни Ctrl + M , $, ни \r\n не подобраны.

<час>

та же Wiki также упоминает альтернатива Hex-редактора :

  • Тип новая строка в начале документа.
  • Тогда выбор к [1 177] просматривают документ в режиме Hex .
  • Выбор одна из новых строк и хита Ctrl + H .
  • , В то время как у Вас есть диалоговое окно Replace, выберите на фоне, новая замещающая строка и Ctrl + C копируют его для вставки его в Замене вводом текста.
  • Тогда Замена или Замена Все, как Вы желаете.

Примечание: символ, выбранный для новой строки обычно, появляется как [1 178] 0a .
Это может иметь различное значение, если файл находится в Windows Format. В этом случае можно всегда переходить в [1 123], и после нового коммутатора это назад и Edit -> EOL Conversion -> Convert to Windows Format.

400
ответ дан Community 23 November 2019 в 01:12
поделиться

Принятие его имеет поиск "регулярных выражений", ищите \r\n. Я предпочитаю \r? \n, потому что некоторые файлы не используют возвраты каретки.

РЕДАКТИРОВАНИЕ: Спасибо за обратную связь, кто бы ни провалил это. Я узнал, что... хорошо, ничто, потому что Вы не обеспечили обратной связи. Почему эта несправедливость?

2
ответ дан Chris Marasti-Georg 23 November 2019 в 01:12
поделиться

У меня не было большой удачи с \r\n регулярными выражениями из найти/заменить окна.

Однако это работает в Блокноте ++ v4.1.2:

  1. Использование меню "View | Show end of line" для включения дисплея конца символов строки. (Переводы строки возврата каретки должны обнаружиться, поскольку сингл заштриховал 'символ' CRLF.)

  2. Выбор один из 'символов' CRLF (помещает курсор только перед одним, удержите клавишу SHIFT и затем нажатие RIGHT CURSOR key однажды).

  3. Копия символ CRLF к буферу обмена.

  4. Удостоверяются, что Вы не делаете , имеют находку или находят/заменяют диалоговое окно открытым.

  5. Открывают найти/заменить диалоговое окно. Поле 'Find what' показывает содержание буфера обмена: в этом случае символ CRLF - который обнаруживается как 2 'символа поля' (по-видимому, это - непечатный символ?)

  6. Гарантируют, что опция 'Regular expression' ВЫКЛЮЧЕНА.

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

9
ответ дан 23 November 2019 в 01:12
поделиться

На диалоговом окне Замены Вы хотите установить режим поиска на "Расширенный". Нормальный или работа привычки режимов Regular Expression.

Тогда просто находят "\r\n" (или просто \n для файлов Unix или просто \r для файлов формата Mac) и устанавливают замену на то, что Вы хотите.

10
ответ дан Nathen Silver 23 November 2019 в 01:12
поделиться

Кажется, что это FAQ, и предлагаемое разрешение:

Простой поиск (Ctrl+H) без regexp

можно повернуть выставленный для обозрения Выставочный Конец / Строки или просмотреть/Показать Все и выбрать теперь видимые символы новой строки. Тогда при запуске команды, некоторые символы, соответствующие символу новой строки, будут вставляться в поле поиска. Соответствия будут заменены строкой замены, в отличие от этого, в regex режиме.

Примечание 1: при выборе их с мышью запустите незадолго до них и перетащите к запуску следующей строки. Перетаскивание до конца строки не будет работать.

Примечание 2: Вы не можете скопировать и вставить их в поле сами.

Расширенный поиск (Ctrl+R) без regexp

Ctrl+M вставит что-то, что соответствует новым строкам. Они будут заменены строкой замены.

22
ответ дан sundar - Reinstate Monica 23 November 2019 в 01:12
поделиться

Используйте опцию расширенного поиска ( Ctrl + R ) и используйте сочетание клавиш для CRLF ( Ctrl + M ) для вставки возврата каретки.

2
ответ дан 2 revs, 2 users 60% 23 November 2019 в 01:12
поделиться

Для нахождения любого своего рода последовательностью разрыва строки используют следующую конструкцию regex:

\R

, Чтобы найти и выбрать последовательный последовательности разрыва строки, добавьте + после \R: \R+.

Удостоверяются, что Вы включаете Регулярное выражение режим:

enter image description here

Это соответствует:

  • U+000DU+000A - CRLF' последовательность
  • U+000A - LINE FEED, LF
  • U+000B - LINE TABULATION, VT
  • U+000C - FORM FEED, FF
  • U+000D - CARRIAGE RETURN, CR
  • U+0085 - NEXT LINE, NEL
  • U+2028 - LINE SEPARATOR
  • U+2029 - PARAGRAPH SEPARATOR
0
ответ дан 23 November 2019 в 01:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: