1

Тема: AHK: RegExMatch вывод нескольких результатов

Здравствуйте уважаемые форумчане. Обращаюсь вновь к вам за помощью.

Объясните пожалуйста мне бестолковому, как в RegExMatch вывести один или несколько результатов по очереди.

Пример кода:


	FileEncoding, UTF-8
    File = %A_ScriptDir%\cache\Reprimands.csv      ; открываем файл
	
	log := {str:"",find:0,num:0}    ,    log.str := []
	Loop, read, %File%
    log.str.Insert(A_LoopReadLine)    ,log.num := A_Index
	
	loop 20000
    if RegExMatch(     log.str[log.num + 1 - A_Index]
        ,"" . PlayerName . "(.*)" . PlayerFirstName . ",,(.*),,,(.*),(.*),,,"
        , end_search) and (log.find:=log.num + 1 - A_Index)
    break

Суть в том, что я уже сделал вывод нужной мне информации, но вот проблема в чем. В файле может содержатся один человек, с разными значениями "end_search2", "end_search3" и "end_search4".

Как мне вывести все найденные данные, по очереди? И вывести кол-во найденых строк по этому совпадению.
Что бы было примерно так


 Send %PlayerName%  %PlayerFirstName% *текст* [Кол-во найденных сток]
 Send %end_search2%
 Send Выдал: %end_search3% Дата: %end_search4%
 Send %end_search2% (вывод второй найденной строки)
 Send Выдал: %end_search3% Дата: %end_search4% (вывод второй найденной строки)

И так далее.

Надеюсь объяснил нормально . Очень нужна ваша помощь.

2

Re: AHK: RegExMatch вывод нескольких результатов

var := "раздватрираз"
match := "", Pos := 1
While Pos := RegExMatch(var, "раз", match, Pos+StrLen(match))
   msgbox % match