Выберите все последовательные строки, начинающиеся с «.», Кроме последней - PullRequest
0 голосов
/ 18 января 2019

Итак, я очищаю текстовый файл, полный папок и документов, которые где-то просочились. Моя цель - использовать регулярные выражения, чтобы облегчить мою работу по поиску, если что-то из наших было скомпрометировано (очевидно, имеет). Я уже избавился от примерно 80% ненужного мусора, но я остался с большим количеством пустых папок в списке. Так как они начинаются с "." и пустые являются последовательными, вот я здесь.

Один из примеров:

./folder1/folder2/folder3:
./folder1/folder2/folder4:
./folder1/folder2/folder5:
-rwxr-xr-x  1    514K  3 Out 08:06 somefilename.here

И моя цель - убрать первую и вторую строки. Имейте в виду, исходные файлы имеют более 15 тыс. Строк, очищенные - около 3 тыс. Таким образом, не нужно удалять только эти две линии, но они идеально вписываются в профиль.

Я думал о чем-то вроде (^\..*\n)+\., но он по-прежнему выбирает последнюю строку, и я хочу, чтобы это осталось.

1 Ответ

0 голосов
/ 18 января 2019

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

pattern = /df(?=.)/g;

и мне попалось попробовать (^\..*\n)+(?=\.), и это было сделано!

...