1 (изменено: Igor|Fixes|Armando, 2016-03-31 19:30:31)

Тема: Поиск ник-нейма по RegExMatch| Скрипт для больки.

Привет форумчане!
У меня такой вопрос. Есть текст в чат-логе:

[10:25:55] Вы провели курс лечения для Vasya_Pupkin(ник-нейм всегда рандомный)

Мне нужно, что-бы ник-нейм с чат-лог'а из той строки, был найден кодом, и помещен в строку:

"IfInString, A_LoopReadLine, {3399ff}Вы провели курс лечения для (вот сюда вставляется тот ник игрока который отметился в chatLog'e в этой строке)"

Код я предполагаю какой должен быть, но не уверен что он правильный.

SelectedFile = %A_MyDocuments%\Gta San Andreas User Files\samp\chatlog.txt
timer:
Loop, Read, %SelectedFile%
{
IfInString, A_LoopReadLine, {3399ff}Вы провели курс лечения для (сюда вставляется ник с чатлог'а)
{
Gosub, Blag
}
}
Goto, timer

Blag:
sendChat("Удачи Вам, не болейте!")
Sleep z
sendChat("/me засучив рукав и посмотрел на часы «Lacoste» с гравировкой «FamilyBigger»")
Sleep y
SendInput,{F6}/c 60{enter}
Sleep y
SendInput,{F8}
return

Кто разбирает с RegExMatch помогите пожалуйста.

2

Re: Поиск ник-нейма по RegExMatch| Скрипт для больки.

Igor|Fixes|Armando, у нас не чат, пишите в будущем более осмысленные сообщения, имеющие отношение к скриптингу.

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

3 (изменено: Igor|Fixes|Armando, 2016-03-31 19:24:30)

Re: Поиск ник-нейма по RegExMatch| Скрипт для больки.

teadrinker, Дмитрий, а как это относиться к моему вопросу?
Если вы про "Привет форумчане!" и больше ничего не было, то это у меня интернет слетел, и больше текста почему-то не отправилось.

4

Re: Поиск ник-нейма по RegExMatch| Скрипт для больки.

Ясно, ок.

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

5 (изменено: SeaVodikendu, 2016-04-03 11:16:29)

Re: Поиск ник-нейма по RegExMatch| Скрипт для больки.

Я не понял что именно вам нужно?
Если вы хотите вытащить из этой строки никнейм то вот вам код:

Loop, read, chatlog.txt,

    IfInString, A_LoopReadLine, Вы провели курс лечения для
    RegExMatch(A_LoopReadLine, "\Q] \E(.*)для\E (.*)", out)
    ; в переменной %out2% хранится ник

А разобраться в  RegExMatch вам поможет "AHK RegEx Tester"

6 (изменено: Igor|Fixes|Armando, 2016-04-03 15:26:24)

Re: Поиск ник-нейма по RegExMatch| Скрипт для больки.

SeaVodikendu пишет:

что именно вам нужно?

мне нужно что-бы RegExMatch "вытаскивал"(находил) ник в чат логе, в строке "Вы провели курс лечения %ник игрока%"(ник всегда разный), и когда есть такая строка, то отправлялось:

sendChat("Удачи Вам, не болейте!")
Sleep z
sendChat("/me засучив рукав и посмотрел на часы «Lacoste» с гравировкой «FamilyBigger»")
Sleep y
SendInput,{F6}/c 60{enter}
Sleep y
SendInput,{F8}

7

Re: Поиск ник-нейма по RegExMatch| Скрипт для больки.

text=
(
[10:25:55]провели курс лечения для Vasya_Pupkin
[10:25:55]курс лечения для Vasya_Pupkin
[10:25:55] Вы провели курс лечения для Vasya_Pupkin
[10:25:55]лечения для Vasya_Pupkin
[10:25:55] Вы провели курс лечения для Vasya_Pupkin1
)
Pos:=1, match:=""
While Pos:=RegexMatch(text, "(?:^|\R)\[.+?] Вы провели курс лечения для ([^\r\n]+)", match, Pos+StrLen(match))
   Msgbox % match1
return