Как удалить строки после: если значение>5 в Notepad++ или Python

надеялся, что кто-то может помочь. Я пытаюсь удалить любую строку, которая имеет 5 или меньше символов после :

например :

test:test
test:test12 (would be the only line kept)
cobra:abcd

Я пытался решить ее в течение нескольких часов с помощью notepad++, как я только учусь python я застрял, очень ценю любую помощь.

7
задан Toto
17.12.2022 9:19 Количество просмотров материала 2826
Распечатать страницу

2 ответа

Я предполагаю, что нам нужно подсчитать все символы после : и до конце линии.

используйте диалоговое окно найти, пометить вкладку, чтобы Выделить Все использование регулярного выражения:

:(.+){6,}

это отметит все строки, которые вы хотите сохранить, где у нас есть по крайней мере 6 символов после :. Визуально убедитесь в отсутствии ошибок.

затем используйте пункт меню Поиск > Закладка > Удалить Немаркированные Строки.

3
отвечен harrymc 2022-12-18 17:07

в диалоговом окне замена Notepad++ используйте регулярное выражение ^[^:]*:.{0,5}$ как показано ниже:

Notepad++ Replace dialog

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

если вы хотите удалить всю строку:

  • если у вас нет пустых строк, используйте EditСтрокеУдалить Пустые Строки.

  • если у вас есть пустые строки нужно сохранить, использовать ^[^:]*:.{0,5}\r?\n вместо. Это не будет работать на самой последней строке, так как это не будет иметь символ(ы) новой строки. Чтобы использовать это, вам также нужно будет проверить . matches newline опция рядом с переключателем" регулярное выражение".

3
отвечен Worthwelle 2022-12-18 19:24

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх