Регулярные выражения в notepad++ замена всего текста после определенного символа



Если надо заменить все, что идет после определенного символа в notepad ++ , то в этом помогут регулярные выражения.


Прошу прощения за несколько сумбурность сей статьи, она будет набираться, обновляться и дополняться, как мне на душу легло, а не как вам, кажется, должно быть.

поиск и замена в notepad ++


√  . — Точка представляет один любой символ

√  ^ — Начало строки

√  $ — Конец строки

√  \s — Пробел

√  \S — Не Пробел

√  \w — буква, цифра или подчёркивание _

√  \d — Любая цифра

√  \D — Любой символ, но не цифра

√  [0-9] — Любая цифра

√  [a-z] — Любая буква от a до z (весь латинский набор символов) в нижнем регистре

√  [A-Z] — Любая буква от a до z в ВЕРХНЕМ регистре

√  [a-zA-Z] — Любая буква от a до z в любом регистре

√  [a-Z] — То же самое

√  * — «Повторитель». Означает, что предшествующий символ может повторяться (0 или более раз)

√  .* — Абсолютно любой набор символов. Например, условие .*
— найдет все что между тегами

√  (^.*$) — Любой текст между началом и концом строки

√  ([0-9][0-9]*.) — ищет любые двухзначные в данном случае цифры

√  \n\r — Ищет пустые строки. Вроде как если оставить пустым окно "Заменить" то удаляет пустые строки, но можно поставить вот это \0

√  ^\s*$ — Ищет пустые строки содержащие пробел.

√  ^[ ]*$ — Ищет пустые строки содержащие пробел.

Примеры:

Добавление знаков в начале и конце строки, абзаца
Допустим, необходимо некий текст, скопированный например из ворда, заключить в теги

Ставим в "найти" - (^.*$) ищет соответственно начало и конец строки.

Ставим в "заменить на" - \1 и то, что нужно вставить в начало и конец строки, у нас в примере это

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

*** Прим. Добавление круглых скобок () в поле найти, обязательно, иначе будет убирать текст.

 

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

Для этого в поле "найти" вводим символ $ Конец строки, а в поле "заменить на" вводим нужный нам тег или что то другое, в данном случае тег не забывая добавить \1, то есть выглядит это так - \1 . В данном случае мы только добавляем нужный нам тег, поэтому в круглые скобки в общем то, не нужны, но если поставить, также будет заменять корректно.

Аналогично можно добавлять что-нибудь и в начале строки, заменив в поле найти на символ ^ начала строки, наверное ...

Как то возникла у меня необходимость удалить пустые строки в документах, и не только просто пустые но и содержащие пробелы. Всё бы ничего если бы это был один-два файла, есть в Notepad++ в операциях со строками такие функции как «Удалить пустые строки» и «Удалить пустые строки (Содер. символы Пробел)».

Но вот беда, мне нужно было это сделать где-то примерно в 25-28 файлах, и в принципе, это тоже нетрудно. Но, мы, же знаем регулярные выражения, подумал я и решил, процесс облегчить. Итак, суть в том, что в блокноте в «Поиске и Замена» есть кнопочка, «Заменить во всех Открытых документах», вот не неё и была вся моя надежда.

Поискав в интернете, долго ли коротко ли, отовсюду понемножку нашел информацию как это сделать, попробовал – получилось.

Поэтому пишу здесь, чтобы самому не забыть, и быть может другим подсказать.

Пункт 1. Удаления пустых строк
В поле "найти" вводим \n\r - ищет пустые строки, вроде как если оставить пустым окно "Заменить" то удаляет пустые строки, но можно поставить вот это \0. Ну а далее всё просто открываем все файлы, которые нам нужно «почистить», вводим символы и жмём «Заменить во всех Открытых документах».

Результат: Во всех открытых документах, пустые строки, не содержащих пробелов удалены.

Пункт 2. Удаления пустых строк, содержащих символы Пробел
Тут работа происходит в два этапа, сначала удаляем символы Пробел, а потом пустые строки как это сделать указано в пункте 1.

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

В поле "найти" вводим ^[ ]*$ или ^\s*$ - ищет пустые строки содержащие пробел (не знаю, может у кого-то с одним не получится набором, попробуйте с другим), аналогично вроде как, если оставить пустым окно "Заменить" то удаляет пробелы, но можно поставить вот это \0. Ну а далее всё просто открываем все файлы, которые нам нужно «почистить», вводим символы и жмём «Заменить во всех Открытых документах».

Результат: Во всех открытых документах, пустые строки очищены от пробелов.

Для удаления этих строк выполняем действия указанные в пункте 1.

P.S. Кстати, пока набирал, текст увидел что есть вкладка «найти в файлах», возможно можно было и обойтись без лишнего открывания – закрывания всех файлов. Это заметка себе на будущее попробовать, а вам возможно подсказка.

Комментариев нет:

Отправить комментарий