Avatar billede tamen Nybegynder
11. juli 2003 - 18:42 Der er 8 kommentarer og
1 løsning

Hjælp med preg_split

Jeg har et langt stykke html der med jævne mellemrum bliver brudt af en line der ligner denne:
<div class='class-overskrift'>En overskrift</div>
Jeg skal have splittet html-stykket op ved de linier. Selve overskriften skifter fra sted til sted. Jeg har selv forsøgt mig lidt, men får en fejl hver gang jeg prøver.
Hvordan gør man det rigtigt?
Avatar billede erikjacobsen Ekspert
11. juli 2003 - 18:58 #1
prøv

  $a = preg_split("/<div class='[^']*'>[^>]*>/i",$dintekst);
Avatar billede erikjacobsen Ekspert
11. juli 2003 - 18:58 #2
$a = preg_split("/<div class='[^']*'>[^>]*<\\/div>/i",$dintekst);

sådan vist
Avatar billede erikjacobsen Ekspert
11. juli 2003 - 18:59 #3
Ha, jeg må lære at tænke mig om:

$a = preg_split("/<div class='[^']*'>[^<]*<\\/div>/i",$dintekst);
Avatar billede erikjacobsen Ekspert
11. juli 2003 - 19:00 #4
Denne bør give det samme som den umiddelbart ovenover. Alt er utestet

$a = preg_split("/<div class='.*?'>.*?<\\/div>/i",$dintekst);
Avatar billede tamen Nybegynder
11. juli 2003 - 19:40 #5
Tak for det. Nu virker det :)
Smid et svar hvis du vil ha points :)
Avatar billede erikjacobsen Ekspert
11. juli 2003 - 19:48 #6
oki - hvilken version fik du til at virke?
Avatar billede tamen Nybegynder
11. juli 2003 - 20:01 #7
Den sidste. Jeg syntes det er enormt svært at lære regex. Der er ikke rigtigt nogen steder hvor man tager håndgribelige ting man skal lave med regex og forklare hvordan man gør. Alle de tutorials jeg har set tager det den anden vej rundt og siger dether tegn gør sådan og dether sådan.
Men hvad, det er så sjældent jeg bruger det. Men det hænger måske sammen med at jeg ikke kan ;)
Avatar billede erikjacobsen Ekspert
11. juli 2003 - 20:08 #8
Det er nok li'som at lære at cykle. Det er nok svært bare at læse sig til, men
har man først lært det, glemmer man det aldrig.

I den sidste er der en konstruktion som kun virker i preg-erne og ikke i
ereg-erne: .*?  det sidste spørgsmålstegn siger at    .*    ikke skal
være grådig.
Avatar billede tamen Nybegynder
11. juli 2003 - 20:17 #9
Hehe, ja det har jeg hørt noget om. Er det ikke så det stopper ved en newline?
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