count og preg_match

Tags:    php

Hey.

Står og vil tælle antal matches, i en streng. Fx. hvis jeg vil tælle antal [ b ] tags.

Den skulle se sådan her ud:

Fold kodeboks ind/udKode 


Det knirker bare ikke helt som det skal :S
Har jeg mon misforstået noget med count og preg_match? Altså brugen af dem.

A little hjælp ville være dejligt :)

På forhånd tak.

PS. Det her er bare en "hurtig løsning" af min fulde funktion - Skulle dog virke ens..



Indlæg senest redigeret d. 20.02.2011 00:49 af Bruger #15611
Hej Michael.

Nå for pokker, det skal være preg match all.

Bruger jeg den så på samme måde, eller?



Hmm, det virker ikke helt.

Den finder alle div tags der er lukkede, men, ikke dem med id/class eller andet i tagget.

preg_match_all("/<div>/i", $html, $matches, PREG_SET_ORDER);

den skulle jo gerne kunne finde et div selvom der står alt muligt andet gejl i tagget.



Indlæg senest redigeret d. 20.02.2011 11:24 af Bruger #15611
Hej Danni,

Her er en stump kode som matcher alle div open tags med attributter:
Fold kodeboks ind/udPHP kode 



Der er to patterns du kan vælge imellem, $patternOpenTags og $patternCloseTags.



Det bør nok endda være:
Fold kodeboks ind/udKode 


Spørgsmålstegnet gør matchet "non-greedy", så der stoppes ved første '>' istedet for sidste. Ellers ville der i dette tilfælde:

Fold kodeboks ind/udKode 

...kun være ét match, som indeholder begge start div tags.



Indlæg senest redigeret d. 20.02.2011 19:51 af Bruger #2695
Hmm, så fik jeg Roberts forslag til at virke, hvertfald med start tags'ne.

Nu laver den så bare ballade ved slut tags'ne.

Fold kodeboks ind/udKode 




t