Что нового

[RegExp] Вывести все ссылки.

Black_Hole

Знающий
Сообщения
126
Репутация
11
Выводится только вторая ссылка DCBA но не выводится ABCD, как вывести все ссылки которые совпадают с регулярным выражением?

Код:
Local $a = '<jsdgfh djgkfh="shjdgfjshd" hjsdgf="//torcache.net/torrent/ABCD.torrent?",hfsgjdhf="//torcache.net/torrent/DCBA.torrent?"'

Local $b='.*torcache.net\/torrent.(.*).torrent.*'
Local $c = StringRegExpReplace($a,$b, '$'&1)

MsgBox(64,"Links.torrent",$c)
 

sss

Продвинутый
Сообщения
332
Репутация
96
Так?
Код:
#include <Array.au3>

$html = '<jsdgfh djgkfh="shjdgfjshd" hjsdgf="//torcache.net/torrent/ABCD.torrent?",hfsgjdhf="//torcache.net/torrent/DCBA.torrent?"'

$regex = StringRegExp($html, "torcache\.net/torrent/(.*?)\.torrent", 3)

_ArrayDisplay($regex)


Код:
#include <Array.au3>

$html = '<jsdgfh djgkfh="shjdgfjshd" hjsdgf="//torcache.net/torrent/ABCD.torrent?",hfsgjdhf="//torcache.net/torrent/DCBA.torrent?"'

$regex = StringRegExp($html, "(//torcache\.net/torrent/.*?\.torrent)", 3)

_ArrayDisplay($regex)
P.S: символ "/" в экранировании не нуждается (т.е. ставить перед ним "\" необязательно), а вот точка "." - нуждается.
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
Black_Hole,
Или так.
Код:
#include <Array.au3>

$sHtml = '<jsdgfh djgkfh="shjdgfjshd" hjsdgf="//torcache.net/torrent/ABCD.torrent?",hfsgjdhf="//torcache.net/torrent/DCBA.torrent?"'
$aSearch= StringRegExp($sHtml, '/([^/]+?)\.torrent', 3)
If @error Then Exit 13
_ArrayDisplay($aSearch)
 
Верх