Maison > Article > développement back-end > Méthode PHP pour compter le nombre d'occurrences de tous les caractères d'une chaîne
Cet article présente principalement la méthode PHP pour compter le nombre d'occurrences de tous les caractères dans une chaîne, impliquant la traversée de caractères PHP et les compétences opérationnelles liées aux opérations statistiques. Les amis dans le besoin peuvent s'y référer
Cet article. décrit les exemples PHP implémente une méthode pour compter le nombre d'occurrences de tous les caractères d'une chaîne. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :
Jetons d'abord un coup d'œil à l'effet :
Algorithme :
parcourez la chaîne une fois ($str
dans cet exemple) et enregistrez les chaînes qui sont apparues dans un tableau ( comme $strRecord
dans cet exemple) ), si cette fonction d'enregistrement existe déjà, elle ne sera pas enregistrée
est utilisée pour chaque chaîne pour comparer avec la valeur du tableau d'enregistrement ($strRecord[]['key']
dans cet exemple) exemple), si la valeur dans l'enregistrement Si une valeur est la même que cette chaîne, enregistrez le nombre de fois + 1 ($strRecord[]['count']
dans cet exemple
Bien sûr, définissez une variable, la valeur par défaut); est faux (comme $found
dans cet exemple), enregistrez à chaque fois Après la comparaison, si le tableau d'enregistrement a déjà cette valeur, définissez-le sur vrai et utilisez cette marque pour enregistrer le tableau qui n'a pas été rencontré auparavant dans le tableau
Code d'implémentation :
<?php //统计字符串中出现的字符,出现次数 echo '<pre class="brush:php;toolbar:false">'; $str = 'aaabbccqqwweedfghhjffffffffggggggggg';//字符串示例 echo $str.'<br/>'; $strRecord=array();//把出现过的字符记录在此数组中,如果记录有,则不记录, for($i=0;$i<strlen($str);$i++){ $found = 0;//默认设置为没有遇到过 foreach((array)$strRecord as $k=>$v){ if($str[$i] == $v['key']){ $strRecord[$k]['count'] += 1;//已经遇到,count + 1; $found = 1;//设置已经遇到过的,标记 continue;//如果已经遇到,不用再循环记录数组了,继续下一个字符串比较 } } if(!$found){ $strRecord[] = array('key'=>$str[$i],'count'=>1);//记录没有遇到过的字符串 } } print_r($strRecord); ?>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!