Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

PHP: Jedan regularni izraz [SOLVED]

[es] :: Skript jezici :: PHP: Jedan regularni izraz [SOLVED]

[ Pregleda: 3293 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

arsa xx
Srdjan Arsic
Beograd

Član broj: 14203
Poruke: 452
*.beotel.net.

ICQ: 247217004
Sajt: webdizajn.arsic.biz


Profil

icon PHP: Jedan regularni izraz [SOLVED]30.03.2005. u 11:45 - pre 231 meseci
Imam kod u php-u koji parsira HTML stranu, izvlaci title, keywords, itd...

Posto sam ja to radio(prepravljao neke gotove regexp), a nepoznajem regexp dovoljno. prilicno lose izgleda.

Ako bi neko mogao da mi pomogne oko jednog regexp ostale bih mogao sam da sredim.

Evo naprimer ovo je kod za izvlacenje titla ti html-a:

Code:

    function getTitle($source){
        preg_match_all("/(?i)title[ ]{0,}>(.){0,}<[ ]{0,}\/[ ]{0,}(i?)title/",$source,$regs);
        $str_title = substr(strstr($regs[0][0],">"),1);
        $str_title = strrev ($str_title);
        $str_title = substr(strstr($str_title,"<"),1);
        $str_title = strrev ($str_title);
        return $str_title;
    }


Pretpostavljam da moze da se resi samo sa jednim redom regexp bez substr...

Hvala.

[Ovu poruku je menjao random dana 08.06.2005. u 16:37 GMT+1]
Flash komponenta za atraktivan prikaz vesti na sajtu:
www.flash-news-ticker.com
 
Odgovor na temu

bOkIcA
Bojan Abramovic
Novi Sad

Član broj: 1808
Poruke: 520
*.metrohive.net.

Sajt: www.bokica.com


Profil

icon Re: Jedan regularni izraz31.03.2005. u 00:37 - pre 231 meseci
Code:
preg_match("/<title>(.*)<\/title/", $html_strana, $title);
echo $title[0];
 
Odgovor na temu

arsa xx
Srdjan Arsic
Beograd

Član broj: 14203
Poruke: 452
195.252.87.*

ICQ: 247217004
Sajt: webdizajn.arsic.biz


Profil

icon Re: Jedan regularni izraz01.04.2005. u 18:27 - pre 231 meseci
Mozda nisam lepo napisao sta mi ustvari treba.

Ne treba mi prostiji regexp, samo sta gornjem da dodam da mi se u rezultatu ne pojavljuje title> i </title koje kasnije uklanjam sa dodatnim kodom.
Flash komponenta za atraktivan prikaz vesti na sajtu:
www.flash-news-ticker.com
 
Odgovor na temu

bOkIcA
Bojan Abramovic
Novi Sad

Član broj: 1808
Poruke: 520
*.metrohive.net.

Sajt: www.bokica.com


Profil

icon Re: Jedan regularni izraz01.04.2005. u 20:13 - pre 231 meseci
Sad te stvarno ne razumem...
Ako hoces da izvuces "title" onda koristis to sto sam ti napisao jer je jednostavnije i brze i dobijes samo "title" bez tagova ili, naravno, pravis svoj kod. :)

mala ispravka:
Code:
preg_match("/<title>(.*)<\/title>/i", $html_strana, $title);
echo $title[1];
 
Odgovor na temu

arsa xx
Srdjan Arsic
Beograd

Član broj: 14203
Poruke: 452
195.252.85.*

ICQ: 247217004
Sajt: webdizajn.arsic.biz


Profil

icon Re: Jedan regularni izraz01.04.2005. u 20:31 - pre 231 meseci
odlicno to je to, prethodni je vracao i <title> tag ovaj sad radi ok.

dodao sam neke tagove iz gornje(za svaki slucaj ukoliko neko nije lepo pisao kod)
i dobio:
Code:
preg_match("/(?i)title[ ]{0,}>(.*)<[ ]{0,}\/[ ]{0,}(i?)title>/i", $source, $title);

Flash komponenta za atraktivan prikaz vesti na sajtu:
www.flash-news-ticker.com
 
Odgovor na temu

[es] :: Skript jezici :: PHP: Jedan regularni izraz [SOLVED]

[ Pregleda: 3293 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.