Avatar billede swaxi Nybegynder
07. marts 2003 - 15:48 Der er 1 løsning

regulært udtryk til parsing af html

hejsa.
jeg prøver at bygge et script, der kan parse html (ikke xhtml) og til det har jeg brug for at få skruet et regulært udtryk sammen, der kan splitte et tag således at jeg kan lave et array af attributes. eg :
    <div align=center style="width:100px">
skal splittes op i noget a la
array {
    ["tagname"] => string {
        "div"
    }
    ["attributes"] => array {
        ["align"] => string {
            "center"
        }
        ["style"] => string {
            "\"width:100px\""
        }
    }
}

...

jeg har ind til videre noget i den her stil :
I)
    $str = "<div align=center style=\"width:100px;\">";
    preg_match("/(\<)([a-zA-Z]+[\w]{1})(.*)(\>)/",$str,$match);
dette giver mig tagname i $match[1]
så har jeg leget lidt med :
II)
    $str = " blah=foo foo=bar\n fook=kungfu";
    preg_match("/([a-zA-Z]*[\=]{1}[\w]*)/",$str,$match);
men den virker ikke som jeg forventer, og jeg kan ikke helt greje hvorfor. hvis jeg erstatter preg_match() med preg_match_all() så får jeg tagsne, men i to arrays ?!?

nogle forslag til hvordan jeg får (II) til at virke og hvordan jeg kombinerer de to ?
Avatar billede swaxi Nybegynder
26. februar 2004 - 23:36 #1
jeg endte med, at skrive et størrere script til formålet. det kan findes på :
http://www.phpclasses.org/browse/package/1020.html
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester