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

Например :

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

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

2 ответа2

3

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

Блокнот ++ Заменить диалог

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

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

  • если у вас нет пустых строк, которые нужно сохранить, используйте ПравкаОперации со строками → Удалить пустые строки.

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

3

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

Используйте диалоговое окно «Найти» на вкладке «Пометить», чтобы пометить все с помощью регулярного выражения:

:(.+){6,}

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

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .