文字列内の各文字の出現数をカウントする方法: 最初に PHP サンプル ファイルを作成し、次に配列に出現した文字を記録し、最後に foreach ループを使用して文字を走査してカウントします。文字列内に出現する回数だけ。
この記事の動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター
この記事の実装例を説明します。文字内のすべての文字に関する PHP 統計情報 文字列内の出現数をカウントする方法。参考のために皆さんと共有してください。詳細は次のとおりです:
まず効果を見てみましょう:
アルゴリズム:
文字列を 1 回ループし (この例では $str)、配列に出現した文字列を記録します (この例では $strRecord など)。この記録関数がすでに存在する場合、記録されません。
#各文字列内の ## が一致した場合、レコード配列の値 (この例では $strRecord[]['key']) と比較し、レコード内の値がこの文字列と同じであれば、その回数を記録します 1 ($strRecord[ この例では ]['count']);もちろん、変数を設定します。デフォルトは false (この例では $found など) です。レコード配列の場合は、各比較を記録します。すでにこの値を持っている場合は、 true に設定し、このマークを通じて、まだ検出されていない配列を配列に記録します。 実装コード:<?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); ?>[推奨事項:
PHP ビデオ チュートリアル]
以上が文字列内の各文字の出現数を数える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。