Что нового

Извлечение текста между идентификаторами

Viktor1703

AutoIT Гуру
Сообщения
1 535
Репутация
410
Вообщем не знал как их (идентификаторы) назвать ещё, но суть не в этом, имеется текст такого типа:

Код:
<ICON[
    icon="icon.png" 
    left="15" 
    top="15" 
]>
Как достать внутренности между <ICON[ и ]> чтобы вернулся массив:

Код:
row  | col
---------------------
[0]  | icon="icon.png"
[1]  | left="15"
[2]  | top="15"
Но текст ещё может выглядеть так:

Код:
<WINDOW[lt="lt.png" tc="tc.png" rt="rt.png" lc="lc.png" 
    cc="cc.png"  rc="rc.png" lb="lb.png" bc="bc.png" rb="rb.png" 
]>
 

sngr

AutoIT Гуру
Сообщения
965
Репутация
384
Код:
#include 'array.au3'
$file=FileRead(@ScriptDir&'\123')
$str=StringRegExp($file,'(?s)<ICON\[.*?(icon="\S+").*?(left="\S+").*?(top="\S+").*?]>',3)
_ArrayDisplay($str)
 
Автор
Viktor1703

Viktor1703

AutoIT Гуру
Сообщения
1 535
Репутация
410
Код:
    icon="icon.png" 
    left="15" 
    top="15"
Значения icon, left, top - могут быть совершенно разными, например image, x, y
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8 382
Репутация
2 381
Код:
#include <Array.au3>

$vTest = ClipGet()

$aRet = StringRegExp($vTest, '\s*([^][=]*=".*?")\s*', 3)
_ArrayDisplay($aRet)
 
Автор
Viktor1703

Viktor1703

AutoIT Гуру
Сообщения
1 535
Репутация
410
А куда всунуть <ICON[ ]> ? Мне скрипт выводит всё из <ICON[ ]>, <WINDOW[ ]> и т. д.

Хотя наверное так лучше будет, спасибо :smile:
 
Верх