yozhic
Silver Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Soundermars (пост) Цитата: возможно у меня устаревшая версия | Нет, в этой версии всё должно работать (я проверил только что на всякий случай). Строчку регулярного выражения копировали из поста или сами набирали? Если из поста, то проверьте не скопировались какие лишние символы, и особенно пробел в конце строчки — форум в блоки кода иногда пробелы добавляет. Присмотритесь внимательно, всё ли как на скриншоте. Вместо кнопки Find, надо нажимать кнопку Replace all (прошу прощения за очевидность, но я просто все возможные затыки перечисляю). Скриптом то можно, но мне кажется, это дольше будет. Видите на скриншоште радио-кнопка All files? Открываете в AkelPad все свои файлы (сколько их у Вас, несколько десятков? — откроет), включаете All files, жмёте Replace all и готово. Если не уверены, то попробуйте вначале на тестовом комплекте файлов. А скриптом вот так: Код: AkelPad.TextReplace(0, "(?-ms)(.+\\n){2}.+\\n?$", "", 0x00280001, 0x1); | Вот, для надёжности отсюда можете скопировать: https://pastebin.com/c5HR1cwT В первой строчке, в комментарии (после двух слэшей //) регулярка, а вторая — это сам скрипт. Добавлено: Soundermars (пост) Цитата: n - это количество строк? | Нет, \n (sic! с обратным слэшем) — это перевод строки. (?-ms) — это 2 переключателя, 1й -m включает привязку к концу файла, 2й -s — точка трактуется как любой символ кроме перевода строки; (.+\n) — это одна строка вместе с завершающим переводом; {2} — дважды, т.е. вместе с предыдущими скобками это 2 строки; .+\n? — это последняя строка, после \n стоит вопрос — это означает, что перевод строки может быть, а может и нет; $ — это, наконец, привязка к концу файла, именно на трактовку этого знака влиял наш переключатель -m в самом начале выражения. |