» »

preg_match_all problem...

preg_match_all problem...

*ziga* ::

Zivjo, ker sem v PHP nekoliko nov in sem se spet srecal z problemom...pac rabim parsat HTML source in dobit vn linke.

no primeri...

<li class="g"><h3 class="r"><a href="link1" class="l"
<li class="g"><h3 class="r"><a href="link2" class="l"
<li class="g"><h3 class="r"><a href="link3" class="l"


Sem sam poskusal ze velikokrat ampak preg_match_all mi ne lezi na dusi.Znam nekaj preprostih primerov npr kako dobiti vsebino med [code] in [/code] ampak tole zgoraj je zame ze pretezko.

Hvala

urosz ::

ne bi zdaj rad na pamet nekaj pisal v php-ju, bi pa nekako takole
jaz bi se malo s stringi igral

čez vse vrstice pojdi in za vsako vrstico si kreiraj nov niz

edit: seveda je to na dolg način, preg_match je DOSTI bolj primeren, le spisat ga je treba

najdi kje v nizu se prvič pojavi 'href="' (mislim da bo funkcija strpos(args)), potem naredi substring od tega niza (od te vrednosti, ki je vrne strpos + 6, pa do konca niza)

dobiš link" class="... itd

spet s strpos dobi index, kje se pojavi '" class=...' in naredi substring(od 0 pa do tega indexa, ki si ga dobil)

in v nizu bi ti moral ostati le še link

to je blo zdaj malo na dolgo, upam da si me razumel in mislim da bi tako moglo it

edit: preg_match je seveda DOSTI bolj primeren, le spisat ga je treba

Zgodovina sprememb…

  • spremenil: urosz ()

*ziga* ::

Ja to sem tudi sam razmisljal, da bi spisal podobno funkcijo...npr najdem dolocen string zbrisem vse pred njem in upostevam rezultat do naslednjega iskanega stringa...ampak kaj ko nevem kako bi zbrisal to hehe...tako da se mi zdi bolj primeren preg_match...

Zgodovina sprememb…

  • spremenil: *ziga* ()

urosz ::

tako bi se dalo kot sem jaz napisal
s substringi

nimbix ::

Sej pa regular expressioni niso nič težkega :D
$ujemanja = array();
preg_match_all('/<a[^>]+href\s*=\s*"([^"]*)"/i', $tvoj_html, $ujemanja);
$linki = $ujemanja[1];

Zgodovina sprememb…

  • spremenil: nimbix ()


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

multimeter

Oddelek: Elektrotehnika in elektronika
61508 (1282) FX6300B

Zlobni pingvin popapcal vso dobroto v mojem prenosniku

Oddelek: Loža
51806 (1684) Gandalfar
»

Kako ste prišli na S-T forum?

Oddelek: Loža
453128 (1843) Prospekt
»

Slo-Tech (strani: 1 2 )

Oddelek: Slo-Tech
555012 (3885) upirna
»

kuk folk pozna S-T (strani: 1 2 )

Oddelek: Slo-Tech
535243 (4629) goranTNT

Več podobnih tem