Autor | Zpráva | ||
---|---|---|---|
Pavel Dumbrovský Profil * |
#1 · Zasláno: 14. 7. 2009, 13:43:08
Zdravím,
fuckin mi včera poradil, jak dostat obsah z cizí stránky bez použití iframe pomoc file_get_contents. Je to dobrý, akorát nejsem kámoš s regulárama, tak bych se chtěl zeptat, mám kus kódu: <h2><a href="/odkaz_nekam.html"><span>Nejakej nadpis</span></a></h2> a zkouším: $odkaz="|<h2><a href=[^>]*><span>([^<]*)|"; $buffer = file_get_contents("nejaka_stranka"); preg_match_all($odkaz, $buffer, $regs, PREG_PATTERN_ORDER); $prvni = $regs[1][0]; $druhy= $regs[1][1]; echo "$prvni"; echo "$druhy"; Použil jsem kód, kterej jsem někde stáhnul a ty reguláry tam mi nejsou jasný, ale funguje to. Problém je v tom, že když zkouším vypsat i ten odkaz_nekam pomocí $regs[0][0], tak mi to nehodí jen link, ale komplet <H2><a href...... <span> A já bych chtěl pouze to url z odkazu. Pak jsem to zkoušel takhle: preg_match("'<div class=\"item\"><h2>([^>]*)<span>'i", $buffer, $vysledek); echo "$vysledek[0] $vysledek[1]"; a to nevypisuje nic.. Mohl by mi prosím někdo zkusit poradit, jak tam ty reguláry správně nasadit? Moc dík. |
||
tiso Profil |
#2 · Zasláno: 14. 7. 2009, 14:07:23
$odkaz="|<h2><a href=([^>]*)><span>([^<]*)|";//[1][0] = href, [2][0] = span |
||
Pavel Dumbrovský Profil * |
#3 · Zasláno: 14. 7. 2009, 14:31:19
Moc dík tiso, přísahal bych, že jsem to takhle zkoušel a něco mi nešlo. Mohl by jsi mi ještě říct, jak fungujou tyhle konkrétní reguláry? Něco jako nula a více znaků až po tu závorku? A ještě k čemu jsou ty "oddělovače u uvozovek na začátku a na konci? Někde jsem četl, že | má fungovat jako OR. Díkec moc.
|
||
tiso Profil |
#4 · Zasláno: 14. 7. 2009, 14:43:23 · Upravil/a: tiso
http://www.regularnivyrazy.info/
Perl-Compatible regulárne výrazy používajú syntax [oddeľovač][výraz][oddeľovač][modifikátory], za oddeľovač si môžeš zvoliť v podstate ľubovolný znak (najčastejšie sú /, @, ~) |
||
Časová prodleva: 15 let
|
0