Удалить первый столбец в Notepad++
у меня есть этот файл:
206 06:06:00.00 X "Регион -2.00" 00:02:00.00
282 06:50:00.00 X "Регион -1.00" 00:01:00.00
353 07:27:00.00 X "Регион -1.00" 00:01:00.00
435 08:20:00.00 X "Регион -1.00" 00:01:00.00
482 08:39:00.00 X "Регион -1.00" 00:01:00.00
521 09:16:00.00 X "Регион -1.00" 00:01:00.00
667 10:42:00.00 X "Регион -2.00" 00:02:00.00
896 12:54:00.00 X "Регион -1.30" 00:01:30.00
1003 13:57:00.00 X "Регион -1.30" 00:01:30.00
1154 15:29:00.00 X "Регион -2.00" 00:02:00.00
1272 16:23:00.00 X "Регион -1.00" 00:01:00.00
1309 16:57:00.00 X "Регион -1.30" 00:01:30.00
1401 17:49:00.00 X "Регион -2.00" 00:02:00.00
1434 18:07:00.00 X "Регион -2.00" 00:02:00.00
1514 18:43:00.00 X "Регион -2.00" 00:02:00.00
1581 19:19:00.00 X "Регион -1.30" 00:01:30.00
1846 21:52:00.00 X "Регион -1.30" 00:01:30.00
1918 22:26:00.00 X "Регион -1.00" 00:01:00.00
1963 22:46:00.00 X "Регион -1.00" 00:01:00.00
есть пробелы перед Не 4-значными числами, например, первая строка "206"
на самом деле начинается как " 206"
мне нужно избавиться от первого столбца, поэтому мне нужно только иметь
06:06:00.00 X "Регион -2.00" 00:02:00.00
для первой строки, и так далее.
Я мало что пробовал с Ctrl+H и regexp, но я всегда, кажется, просто удалить всю строку.
если у вас есть другие решения, а не Notepad++ в виду, они также будут делать. Причина, по которой я выбрал Notepad++, заключалась в том, что это не исходный файл, и он прошел через некоторое форматирование (удалите все строки, не содержащие "Регион -"), поэтому было бы проще, если все можно сделать в 1 месте.
7 ответов
использовать Alt+ Shift+навигационные клавиши, или Alt+ Shift + нажмите, чтобы сделать выбор блока только этого столбца. Затем просто нажмите Del.
попробуйте эту замену regex в notepad++:
search: ^\s*[0-9]+\s+
replace: nothing
Если вы хотите удалить все строки, которые не содержат "Регион -" одновременно, вы можете изменить шаблон на:
search: ^(?!.*Регион -).*\r?\n?|^\s*[0-9]+\s+
этот ответ удалит как первый столбец, так и строки, которые не содержат строку поиска.
Сначала удалите столбец номер один
найти: ^[ 0-9]+\s+(.*)
Заменить на:
удалить строки, не содержащие нужную строку следующего. Это немного сложно, потому что механизм регулярных выражений, используемый Notepad++, не позволяет оператору not, поэтому (?!... вариант не работает. Вместо этого вы должны сделать это в несколько лестница.
Шаг 1 - добавить префикс к строкам, которые содержат то, что вы хотите сохранить
найти: (.*KeepLinesWithThisString.*)
Заменить на: ZZZ
Шаг 2 - удалить строки, которые не начинаются с этого префикса.
мы знаем, что строки без префикса будут начинаться с числа или пробела, поэтому эти строки будут пустыми
найти: ^[ 0-9]+\s+(.*)
Заменить: (nothing / leave blank)
Шаг 3 - удалить префикс
найти: ^ZZZ(.*)
Заменить на:
Шаг 4 - удалить пустые строки
выделите весь текст документа. ctrl+a или Edit > Select All
TextFX > TextFX Edit > Delete Blank Lines
TextFX > TextFX Edit > Delete Surplus Blank Lines
удалить первый столбец в Notepad++:
- для selcect столбца, который вы хотите удалить : нажмите клавишу Alt и перетащите
- для cut: Alt+X
таким образом, вы можете удалить любой столбец или несколько столбцов одновременно.
другой путь, уравновешивает ведущий космос сперваEdit->Blank Operations->Trim Leading Space
.
Тогда ищите ^\d+
, заменить нечем. Затем снова обрезать. Это может быть немного больше шагов, но это так.