1

Тема: RegexMatch и запрос вперёд

Здравствуйте.
Суть проблемы такова. Есть некий многострочный файл с произвольно-повторяющимися строками. Нужно найти определённую строку, которая в файле далее не встречается.

Пример:

собака 454646
мышь 14535
кролик 453536
собака 5364366
кот 3552556
мышь 434636
хомяк 453636
красы 5345365436

Из этого списка нужно значение последней строки "мышь".

Я так понимаю, что в этом случае следует использовать "негативный запрос вперёд". Для проверки отсутствия далее по тексту "мышей". Но мой вариант возращает мне значение "14535": первое вхождение "мыши" в документе. А мне надо последнее (434636). Что я делаю не так?

!1::
FileRead, Chatlog, C:\Users\Public\Documents\GTA San Andreas User Files\SAMP\chatlog.txt
if RegExMatch(Chatlog, "мышь\s(.*)(?!мышь)", var)
  {
   SendInput,{F6}%var1%{Enter}
  }
Return

Заранее благодарен за помощь.

2

Re: RegexMatch и запрос вперёд

text = 
(
собака 454646
мышь 14535
кролик 453536
собака 5364366
кот 3552556
мышь 434636
хомяк 453636
красы 5345365436
)

RegExMatch(text, "s).*мышь (\d+)", match)
MsgBox, % match1
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder