1

Тема: AHK: RegExMatch не хочет искать с конца строки

В общем код:

str = sddfdsafsa123sadsadf987sdf
RegExMatch(str, "\d+",str ,0)
MsgBox %str%

Почему - то не ищет с конца строки.

2 (изменено: Malcev, 2014-08-20 16:10:34)

Re: AHK: RegExMatch не хочет искать с конца строки

Почему же, все ищет:

str = sddfdsafsa123sadsadf987sd1
RegExMatch(str, "\d+",str ,0)
MsgBox %str%

3 (изменено: Alectric, 2014-08-20 16:49:10)

Re: AHK: RegExMatch не хочет искать с конца строки

Поиск ведется всегда слева направо (насколько мне известно), а в функции в конце указывается стартовая позиция поиска.

str = sddf______123_______9_7443
a:=RegExMatch(str, "\d+",b ,-6)
MsgBox %b%`npos=%a%
a:=RegExMatch(str, "\d+",b ,-4)
MsgBox %b%`npos=%a%
Win 10 x64
AHK
                       Справка AHK v1 тебе в помощь.

4 (изменено: Desire, 2014-08-20 17:30:52)

Re: AHK: RegExMatch не хочет искать с конца строки

А, все, я понял. AHK начинает искать с метки вперед. А как сделать так, чтобы находило последние цифры, независимо от их положения в строке?

5

Re: AHK: RegExMatch не хочет искать с конца строки

str = sddfdsafsa123sadsadf987sdf
RegExMatch(str, ".*[^\d](\d+)",str)
MsgBox %str1%

6

Re: AHK: RegExMatch не хочет искать с конца строки

Спасибо