Как бы я удалил первые 27 символов из каждой строки Notepad ++?


59

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

2011-09-25 01:25:29 [INFO] <Exazoro> wazup

Но это должно быть так:

<Exazoro> wazup

Вы могли бы использовать какой-то вариант команды unix cut из unxutils или busybox, чтобы сделать это намного проще - это должен быть notepad ++?
Подмастерье Компьютерщик

@JourneymanGeek это не обязательно должен быть блокнот ++, это просто, что я в основном использую, и у него есть поддержка макросов и плагинов, так что я догадался, что может быть что-то для этого.
Мифриллица

Ответы:


78

Используйте поиск по регулярному выражению, ищите ^...........................и заменяйте на (пустая строка) .

введите описание изображения здесь

К сожалению, Notepad ++ не поддерживает, например, количество повторений ^.{27}- документация SciTE regexp применима и здесь.


В качестве альтернативы, используйте прямоугольное многострочное выделение (нажмите Altпри выборе), чтобы выбрать эти первые 27 символов в каждой строке, затем нажмите Deleteили Backspace.

введите описание изображения здесь


Используя инструменты Unix (например, Cygwin, UnxUtils), вы можете использовать cut -c28-или sed -E "s|^.{27}||"вместо. По крайней мере, это вызовы командной строки Linux, которые вы бы использовали ...


24
Alt + Shift + вправо, чтобы выбрать 27 символов в первом ряду, затем Pg Dn, все еще удерживая Alt + Shift, должен это сделать
icc97

1
Для регулярных выражений Notepad ++ не соответствует всем стандартным правилам регулярных выражений, поэтому я не удивлен, что вы не смогли заставить его работать. И так как первые 27 символов выглядят как дата, время и уровень ошибки, возможно, будет возможно более информативное регулярное выражение, например^[0-9\-]+ [0-9:]+ \[[A-Z]+\]
MBraedley

4
Любить Altза прямоугольный отбор !!
Громер

Альтернативный выбор простой и легкий. Спасибо Даниэль Бек.
Удай Киран Туммалапалли

1
Вау! спасибо за этот прямоугольный совет по выбору ... Я даже не знал, что что-то подобное существует ...
Fr0zenFyr

19

В более новых версиях Notepad ++ вы можете использовать количество повторений. Просто замените ^.{1,27}на пустую строку.


7
Конечно, если это точно 27 символов, просто используйте ^.{27}.
Раскол

5

Ниже приведен макро способ. Это более интуитивно понятно для нетехнических людей:

1) Поместите курсор на первую строку (любая позиция курсора)

2) Нажмите: Макрос -> Начать запись

3) Выполните следующие действия нажатия клавиш:

* Press the Home key  
* Press Delete key 27 times (till you reach the intended character)
* Press down arrow button. 

4) Нажмите: Макрос -> Остановить запись

5) Нажмите: несколько раз запустить макрос -> выберите «Выполнить до конца файла» -> нажмите «Выполнить».


4

UPD: теперь Notepad ++ поддерживает следующее повторение: ^.{27} но теперь у вас notepad ++ будет повторять удаление символов до более чем 27, во избежание этого вы можете использовать следующее выражение:

  • Найти то, что: ^.{27}(.*)$
  • Заменить: $1

это работает отлично!
Руди

2

небольшое улучшение к ответу Дэниела Бека:
используйте поиск по регулярным выражениям, ищите:

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

и заменить на:

\1

0

возможно просто выделите текст с помощью ALT + мышь левой кнопкой


Не могли бы вы подробнее остановиться на этом?
Toto

0

ALT + SHIFT + выбор мыши (только ALT не работает)

Наведите курсор на начало файла, перейдите в конец, удерживая ALT + SHIFT, и укажите позицию, которую вы хотите ...

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.