首頁 >後端開發 >PHP問題 >怎麼統計字串中每個字元出現的次數

怎麼統計字串中每個字元出現的次數

藏色散人
藏色散人原創
2021-03-19 10:54:4421177瀏覽

統計字串中每個字元出現的次數的方法:首先建立一個PHP範例檔案;然後把出現過的字元記錄在array數組中;最後透過foreach循環遍歷統計字串中出現的字元次數即可。

怎麼統計字串中每個字元出現的次數

本文操作環境:windows7系統、PHP7.1版,DELL G3電腦

本文實例講述了PHP實作統計所有字元在字符串中出現次數的方法。分享給大家參考,具體如下:

先來看看效果:

怎麼統計字串中每個字元出現的次數

演算法:

##一次字串一次迴圈(本例的$str),把出現過的字串記錄在一個陣列(如本例的$strRecord)內,如果已經此記錄函數已經有,則不記錄;

在每個字串時,拿來與記錄數組的值進行比較(本例的$strRecord[]['key']),如果記錄裡的某個值和這個字串一樣,就記錄次數1(本例的$strRecord[ ]['count']);

當然,設定一個變量,預設為false(如本例的$found),記錄每次比較完,如果記錄數組已經有這個值,就設定為true ,透過這個標記,把沒有遇過的陣列記錄到陣列裡

#實作程式碼:

<?php
//统计字符串中出现的字符,出现次数
echo &#39;<pre class="brush:php;toolbar:false">&#39;;
$str = &#39;aaabbccqqwweedfghhjffffffffggggggggg&#39;;//字符串示例
echo $str.&#39;<br/>&#39;;
$strRecord=array();//把出现过的字符记录在此数组中,如果记录有,则不记录,
for($i=0;$i<strlen($str);$i++){
 $found = 0;//默认设置为没有遇到过
 foreach((array)$strRecord as $k=>$v){
  if($str[$i] == $v[&#39;key&#39;]){
   $strRecord[$k][&#39;count&#39;] += 1;//已经遇到,count + 1;
   $found = 1;//设置已经遇到过的,标记
   continue;//如果已经遇到,不用再循环记录数组了,继续下一个字符串比较
  }
 }
 if(!$found){
  $strRecord[] = array(&#39;key&#39;=>$str[$i],&#39;count&#39;=>1);//记录没有遇到过的字符串
 }
}
print_r($strRecord);
?>

【推薦:

PHP影片教學

以上是怎麼統計字串中每個字元出現的次數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn