phpbar.de logo

Mailinglisten-Archive

[php] Anzahl gleicher zeichen zählen? Kein strlen() oder substr_count()

[php] Anzahl gleicher zeichen zählen? Kein strlen() oder substr_count()

Niels Jäckel niels.jaeckel at silice.de
Mon Dez 13 21:49:49 CET 2004


hallo michael,

> Also ich hab einen sehr langen string, mit buchstaben und sonstigen zeichen.
> Jetzt möchte ich eine ausgabe aller zeichen und deren anzahl (vorkommen) im
> string.

also wenn es darum geht, das vorkommen eines bestimmten zeichens zu 
ermitteln, ist substr_count() sicher die beste lösung. wenn du aber 
mehrere oder gar alle zeichen statistisch erheben möchtest, schlage ich 
sowas ähnliches vor:

<snipp>

    $count = array();
    $length = strlen($str);   // $str ist hierbei der sehr lange string

    for ($i = 0; $i < $length; $i++) {

       $num = ord($str{$i});

       if (isset($count[$num])) {

          $count[$num]++;

       } else {

          $count[$num] = 0;

       }
    }


</snipp>

so hast du am ende im array $count unter dem ordinalen schlüssel des 
zeichens dessen anzahl an vorkommen - achtung auf grund von faulheit 
ungetestet ;-)

hoffe, das is ne hilfe
frohes fest
niels jäckel

php::bar PHP Wiki   -   Listenarchive