Решено Хз как описать.

Тема в разделе "Вопросы", создана пользователем Nagenbl4, 14 апр 2019.

  1. Nagenbl4

    Nagenbl4 Интересующийся

    Регистрация:
    14 янв 2018
    Сообщения:
    108
    Симпатии:
    2
    Loop 20 {
    m2 := ie.document.getElementsByTagName("div")[3].innerText
    m3 := ie.document.getElementsByTagName("div")[3].innerText
    RegExMatch(m2, "Игрок (.*) пожал Вам руку (.*) в кол-ве (.*)", out)
    IniWrite, % out1 out2 out3 "`n", Привет.ini, Мне
    RegExMatch(m3, "Вы пожали руку (.*) в кол-ве (.*)", aza)
    IniWrite, % aza1 aza2 "`n", Привет.ini, Я
    }
    С переменными вопросов нету, всё нормально, % m1 m2 работают и пишут всё стабильно.
    Проблема в другом, если out1 = Кирилл, а в %m1% далее есть строки с этим Кириллом, то в Привет.ini записывается всё равно 1 раз, первый Кирилл так сказать.
    Блин, сложно описал, думаю поймёте проблему)
     
  2. Cucumber

    Cucumber Активный участник

    Регистрация:
    4 ноя 2018
    Сообщения:
    40
    Симпатии:
    14
    Script = %A_ScriptDir%\1r.ini
    Loop, Read, %Script%
        {
            RegExMatch(A_LoopReadLine, "(.*) пожал руку (.*)", out)
            FileAppend, % "Игрок " out1 " пожал руку " out2 "`n", %A_ScriptDir%\Рука.txt
        }
    msgbox, Готово!
     
  3. Nagenbl4

    Nagenbl4 Интересующийся

    Регистрация:
    14 янв 2018
    Сообщения:
    108
    Симпатии:
    2
    Скрипт работает, но выдаёт пустые строки в Рука.txt, по типу:
    Игрок  пожал руку
    Игрок  пожал руку
    Игрок  пожал руку
    Игрок Kirill_Abram пожал руку Yuri_Vescontti
    Игрок  пожал руку
    Игрок  пожал руку
    Игрок Abram_Linkoln пожал руку Den_Pub
    Как фиксануть эти ненужные строки?
     
  4. BASS_DEVSOFTWARE

    BASS_DEVSOFTWARE Интересующийся

    Регистрация:
    29 апр 2017
    Сообщения:
    125
    Симпатии:
    81
    Игрок пожал руку?
    
    If out1 = 
    return
    
     
  5. Nagenbl4

    Nagenbl4 Интересующийся

    Регистрация:
    14 янв 2018
    Сообщения:
    108
    Симпатии:
    2
    ??
     
  6. BASS_DEVSOFTWARE

    BASS_DEVSOFTWARE Интересующийся

    Регистрация:
    29 апр 2017
    Сообщения:
    125
    Симпатии:
    81
    
    Script = %A_ScriptDir%\1r.ini
    label:
    Loop, Read, %Script%
        {
            RegExMatch(A_LoopReadLine, "(.*) пожал руку (.*)", out)
              if (out1 = "" or out2 = "")
              continue label
            FileAppend, % "Игрок " out1 " пожал руку " out2 "`n", %A_ScriptDir%\Рука.txt
        }
    msgbox, Готово!
    
    Пробуй.
     
  7. Nagenbl4

    Nagenbl4 Интересующийся

    Регистрация:
    14 янв 2018
    Сообщения:
    108
    Симпатии:
    2
    Да, всё работает. Поможешь с числами?
    Script = %A_ScriptDir%/chatlog.txt
    spa:
    Loop, Read, %Script%
    {
        RegExMatch(A_LoopReadLine, "Игрок (.*) перевел Вам на счет (.*)", outdsa)
        if (outdsa1 = "" or outdsa2 > "100000")
        {
            continue spa
        }
        IniWrite, % "Игрок " outdsa1 " пожертвовал " outdsa2 "`n", %A_ScriptDir%\Bank.txt, Деньги мне
    }
    return
    Вид строки в игре:
    Игрок Abram_Lincoln перевел Вам на счет 1000000$
    Как сделать в блокноте сортировку большего к меньшему?