1 (изменено: sergeyols, 2015-08-14 01:57:38)

Тема: AHK: Удаление строки

Все просто, у меня есть текстовый документ. Нужно, чтобы из "Loop, Read, file.txt" удалялась строка в которой встретилось слово "авторизовался" и изменения сохранились в документе.

2

Re: AHK: Удаление строки

sergeyols, ознакомьтесь с этой темой, отредактируйте заголовок.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

3 (изменено: Malcev, 2015-08-14 01:59:17)

Re: AHK: Удаление строки

Алгоритм может быть такой:
FileRead - читаем файл в переменную.
FileDelete - стираем файл.
Loop, Parse - Парсим  переменную построчно.
   If !instr - проверяем строку на присутствие нужного слова, если не находим, то добавляем эту строку в новую переменную.
      NewVar .= A_LoopField "`n"
FileAppend  - новую переменную сохраняем в файл.

4 (изменено: serzh82saratov, 2015-08-18 04:10:00)

Re: AHK: Удаление строки

Ещё вариант:

FileEncoding, UTF-8
StringCaseSense, Locale
File = %A_ScriptDir%\File.txt

Loop, Read, %File%, %A_ScriptDir%\Temp.txt
    IfNotInString, A_LoopReadLine, авторизовался 
        FileAppend, %A_LoopReadLine%`n 
FileMove, %A_ScriptDir%\Temp.txt, %File%, 1

или:


FileName = %A_ScriptDir%\File.txt
FileEncoding, UTF-8
FileRead, Text, %FileName%
Text := RegExReplace(Text, "m`ai)^.*авторизовался.*?(\R|$)")
FileDelete, %FileName%
FileAppend, %Text%, %FileName%
По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui