Avatar billede micmicmicmic Nybegynder
22. september 2006 - 21:17 Der er 6 kommentarer og
1 løsning

Tælle antal gange et ord fremtræder i en variabel

Hej,
Som titlen siger, vil jeg gerne spørge om koden, til at tælle det antal gange "klump" f.eks. fremtræder i en variabel.

På forhånd tak
Med venlig hilsen
Michael Nielsen
Avatar billede coderdk Praktikant
22. september 2006 - 21:29 #1
Du kan bruge denne:

    function countWord( $word, $text )
    {
        preg_match_all( '/\b' . preg_quote( $word, '/' ) . '\b/i', $text, $m );
        return count( $m[0] );
    }

f.eks.:

echo countWord( "klump", $dinTekst );
Avatar billede gizmo-gizmo Nybegynder
23. september 2006 - 09:15 #2
Et simplere (men ikke så fleksibelt) forslag:

echo substr_count($minstreng, "klump");
Avatar billede coderdk Praktikant
23. september 2006 - 12:22 #3
Yep, forskellen er at gizmo-gizmo's version også tæller "guldklump" og "klumpning" med - min tæller kun hele ord :)
Avatar billede gizmo-gizmo Nybegynder
23. september 2006 - 13:41 #4
Og er case-insensitive
Avatar billede coderdk Praktikant
23. september 2006 - 14:09 #5
Yep, min er case insensitive, men ønsker man case sensitivity fjerner man bare i'et i slutningen /i :)
Avatar billede micmicmicmic Nybegynder
25. september 2006 - 16:14 #6
Undskyld, jeg har ikke været helt opmærksom på denne tråd, jeg tjekker lige op på din løsning coderdk :)
Avatar billede micmicmicmic Nybegynder
25. september 2006 - 16:24 #7
Så har ejg tjekket af på det, og begge svar ser rent faktisk gyldige ud, gizmo-gizmo du kan også smide et svar hvis du ønsker del i den lille pointsum.
Det jeg egentligt skulle bruge koden til er at tælle om der er lige mange [kode] og [/kode] i en variabel, og jeg må sige jeg har fået de løsninger jeg skal bruge, tak for det :)
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

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