1 (изменено: DD, 2017-03-11 00:27:49)

Тема: AHK: Извлечение строки из списка по совпадению

Как задать условие: вывести строку из следующего списка, в области после последнего слэша максимально совпадающую с текстом из переменной (например, с таким: "AdvORzszszszszszszszs")? —

C:\IE
C:\IE\t=27229.html
C:\Temp\FXSAPIDebugLogFile.txt
C:\Temp\flashgot.Profile\FlashGot.exe
C:\Temp\flashgot.Profile
C:\Program Files\Common Files\Syszszszszszszszszstem
C:\Program Files\Common Files
F:\APPs\AdvOR-0.3.0.20\AdvOR\AzszszszszszszszsdvOR.ini
F:\APPs\AdvOR-0.3.0.20
F:\APPs\AdvOR-0.3.0.21
F:\APPs\AdvOR-0.3.0.21\AdvOR\AdvORzszszszszszszszsRRRRR.ini
F:\APPs\AdvOR-0.3.0.22
F:\APPs\AdvOR-0.3.0.22\AdvOR\AdvOR.ini

2 (изменено: svoboden, 2017-03-11 05:00:11)

Re: AHK: Извлечение строки из списка по совпадению

Если не использовать регулярные выражения, то так:

process_list =
(
C:\IE
C:\IE\t=27229.html
C:\Temp\FXSAPIDebugLogFile.txt
C:\Temp\flashgot.Profile\FlashGot.exe
C:\Temp\flashgot.Profile
C:\Program Files\Common Files\Syszszszszszszszszstem
C:\Program Files\Common Files
F:\APPs\AdvOR-0.3.0.20\AdvOR\AzszszszszszszszsdvOR.ini
F:\APPs\AdvOR-0.3.0.20
F:\APPs\AdvOR-0.3.0.21
F:\APPs\AdvOR-0.3.0.21\AdvOR\AdvORzszszszszszszszsRRRRR.ini
F:\APPs\AdvOR-0.3.0.22
F:\APPs\AdvOR-0.3.0.22\AdvOR\AdvOR.ini
)

    Loop, Parse, process_list, `n
    {
	if A_LoopField contains AdvORzszszszszszszszs
	    MsgBox %A_LoopField%
        }
Return

3

Re: AHK: Извлечение строки из списка по совпадению

list =
(
C:\IE
C:\IE\t=27229.html
C:\Temp\FXSAPIDebugLogFile.txt
C:\Temp\flashgot.Profile\FlashGot.exe
C:\Temp\flashgot.Profile
C:\Program Files\Common Files\Syszszszszszszszszstem
C:\Program Files\Common Files
F:\APPs\AdvOR-0.3.0.20\AdvOR\AzszszszszszszszsdvOR.ini
F:\APPs\AdvOR-0.3.0.20
F:\APPs\AdvOR-0.3.0.21
F:\APPs\AdvOR-0.3.0.21\AdvOR\AdvORzszszszszszszszsRRRRR.ini
F:\APPs\AdvOR-0.3.0.22
F:\APPs\AdvOR-0.3.0.22\AdvOR\AdvOR.ini
)
word = AdvORzszszszszszszszs

RegExMatch(list, "m`a)^.*\\[^\\]*\Q" word "\E[^\\]*$", Match)
msgbox % Match
По вопросам возмездной помощи пишите в личку
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.25.01 (Unicode 32-bit).
+ DD

4

Re: AHK: Извлечение строки из списка по совпадению

Спасибо!