Autor | Zpráva | ||
---|---|---|---|
Jack06 Profil |
#1 · Zasláno: 25. 7. 2010, 11:24:54
Dobrý den, nějak se nemohu poprat s tím, jak vypsat všechny url typů: http://www.example.com/, http://example.com/, www.example.com ze souvislého textu i z tagů.
tímto scriptem dostanu celý web ve tvaru stringu a z něj bych chtěl vytahat všechny url, které ten string obsahuje. Díky za pomoc.. $string = htmlspecialchars(file_get_contents('http://www.example.com/')); |
||
DoubleThink Profil * |
#2 · Zasláno: 25. 7. 2010, 13:56:25
Zkus tento regulární výraz:
\b(?:(?:https?|ftp|file)://|www\.|ftp\.)[-A-Z0-9+&@#/%=~_|$?!:,.]*[A-Z0-9+&@#/%=~_|$] |
||
Jack06 Profil |
#3 · Zasláno: 25. 7. 2010, 15:43:44
No nevím, nějako mi to nechce fungovat, je možné že to dělám špatně. Zkusíš, jestli ti to pujde třebas s te stringem z:
$string = htmlspecialchars(file_get_contents("http://www.superpokec.cz")); pokud jo, napsat mi jak jsi ten regulární řetězec použil.. moc mi práce s regulárními řetězci nejde. Díky |
||
DoubleThink Profil * |
#4 · Zasláno: 25. 7. 2010, 18:04:56
$str = <<<STR Dobrý den, nějak se nemohu poprat s tím, jak vypsat všechny url typů: ht>tp://w>ww.example.com/, ht>tp://example.com/, w>ww.example.com ze souvislého textu i z tagů.' STR; preg_match_all('^\b(?:(?:https?|ftp|file)://|www\.|ftp\.)[-A-Z0-9+&@#/%=~_|$?!:,.]*[A-Z0-9+&@#/%=~_|$]^i', $str, $matches); print_r($matches); /* Array ( [0] => Array ( [0] => http://www.example.com/ [1] => http://example.com/ [2] => www.example.com ) ) */ |
||
Jack06 Profil |
Aha děkuji, chybělo mi ukončení řetězce :-(
Akorát nevím, proč, ale nevypisuje to všechny url na stránce.. Vypíše jich většinu u nějakých i k souborům : example.com/neco.php atd, ale ne všechny.. Tam to je nějak omezené nebo není? V tom reg. výrazu? No, možná už vím.. nejspíše by bylo lepší, pokud to jde, vyhledat vše co je v a href jako odkaz Moderátor Joker: Tři příspěvky sloučeny do jednoho
|
||
Jack06 Profil |
#6 · Zasláno: 27. 7. 2010, 10:36:13
DoubleThink:
Dokázal by jsi porsím napsat regulární výraz, který by vypsal vše, co je v: <a href=toto vypsat ></a> <a href='toto vypsat' ></a> <a href="toto vypsat" ></a> ? Zkoušel jsem různě upravovat to co jsi mi poslal, ale vypisovalo mi to jenom ty href= Děkuji |
||
Časová prodleva: 14 let
|
0