Получить список всех номеров строк всех пустых строк, найденных в текстовом файле в Notepad ++ или Microsoft Excel? - PullRequest
0 голосов
/ 13 января 2020

У меня есть текстовые файлы с более чем 1000 строк данных, текстовые строки в этих текстовых файлах разделены одной пустой строкой через произвольный интервал. Как получить или напечатать список этих пустых номеров строк как 5,15,50,77,150,294. Я сталкивался с подобным вопросом, но он был для python - Получить номер строки определенной фразы в файле Python

Можем ли мы добиться того же в блокноте ++ или Excel?

Ответы [ 2 ]

0 голосов
/ 13 января 2020

Поместить курсор в начало первой строки файла. Используйте меню => Редактировать => Редактор столбцов. Выберите «Номер для вставки», Начальный номер = 1, увеличьте на = 1, оставьте «Повтор» пустым, выберите начальные нули. Нажмите OK.

Теперь в файле должны быть номера строк с начальными нулями в каждой строке. Подсчитайте количество цифр, добавленных в последнюю строку файла. Если файл содержит от 1000 до 9999 строк включительно, то должно быть 4 (четыре) цифры.

Откройте окно поиска и выберите вкладку «Пометить». В поле «найти» введите ^\d{4}.. Измените число 4 на количество цифр, найденных в последней строке файла, если это необходимо. Это отметит любую строку, которая имеет что-то после четырех начальных цифр. Выберите «регулярное выражение» и «обернуть вокруг» и «линия закладки». Нажмите «отметить все». Теперь должны увидеть все строки, кроме пустых линий, имеющих синий круг возле левого поля. Используйте меню => Поиск => Закладка => Удалить отмеченные строки. В буфере теперь должны быть только записи для пустых строк.

Откройте окно поиска и замены. В области «найти что» введите ^\R0* и в поле «заменить на введите , (т. Е. Запятая или запятая). Выберите« регулярное выражение »и« обтекание ». Нажмите« заменить все ».

Теперь просто нужно удалить начальные нули в первой строке и возможную запятую в конце текста.


Для метода Excel:

Предполагая каждую строку файл находится в одной строке листа. Вставьте новый столбец в лист. Поместите номера строк в ячейки этого столбца. (Я иногда помещаю 1 в ячейку A1 и формулу =A1+1 в ячейку ниже. Затем скопируйте эту ячейку в каждую ячейку ниже этой до последней строки данных на листе. Затем скопируйте весь столбец и вставьте специальные вставки значений.)

Получив номера строк в столбце листа. Сортируйте лист по значениям в столбце B. Это приведет к тому, что все непустые строки появятся наверху. Пустые строки с номерами строк будут показаны внизу отсортированных строк.

0 голосов
/ 13 января 2020

Этот perl один вкладыш выполняет работу:

perl -anE 'say $. if /^\h*$/' file.txt

Объяснение:

  • $. содержит текущую строку
  • /^\h*$/ соответствует пустым строкам
...