Что нового

[RegExp] Выбрать некоторый текст из html страницы

ivsatel

Продвинутый
Сообщения
319
Репутация
84
Здравствуйте.
Использую AutoIt: v3.3.8.1

Я понимаю, что вопрос поднимался уже 100500 раз, но я ни чего не нашел, а если нашел то не получается собрать все в кучу что-бы работало.

Окончательно запутался с регулярными выражениями. Хочу получить следующее:
Адрес страницы http://forum.utorrent.com/viewforum.php?id=4
В содержимом страницы есть текст:
Код:
<span class="stickytext">Sticky:</span> <a href="viewtopic.php?id=115806">µTorrent 3.2 Release Candidate 4 (27434)</a> <span class="byuser">by Firon</span> <span class="pagestext">[ <a class="item1" href="viewtopic.php?id=115806&amp;p=1">1</a> <a href="viewtopic.php?id=115806&amp;p=2">2</a> <a href="viewtopic.php?id=115806&amp;p=3">3</a> <span class="spacer">…</span> <a href="viewtopic.php?id=115806&amp;p=30">30</a> ]</span>

Мне нужно выбрать только µTorrent 3.2 Release Candidate 4 (27434)
Причем таких записей несколько (несколько билдов программы) и они все разные.
Хочу, что-бы выводилось строками примерно так:

µTorrent 3.2 Release Candidate 4 (27434)
µTorrent 3.1.3 Stable (27832)
µTorrent 3.3 Alfa (2000)

Но мне нужно, что-бы выбирались те которые обрамлены тегами в начале:
Код:
<span class="stickytext">Sticky:
И тегами в конце:
Код:
</a> <span class="byuser">
Исключив отображение строк с тегом:
Код:
<span class="stickytext">Sticky:</span> <span class="closedtext">Closed:</span>
 

Zaramot

I ♥ AutoIt
Сообщения
1,160
Репутация
660
Попробуй так:
Код:
#include <INet.au3>
#include <Array.au3>

$HTML = _INetGetSource('http://forum.utorrent.com/viewforum.php?id=4')
$Get = StringRegExp($HTML, 'stickytext">Sticky:</span> <a href=".*">(.*?)</a> <span class="byuser"', 3)
_ArrayDisplay($Get)
 
Верх