获取字符串是哪一个字符出现的字数最多

获取字符串是哪一个字符出现的字数最多

<?php
/**
 * 项目
 * user: ysq
 * date: 2020/4/14
 */
// 获取字符串是哪一个字符出现的字数最多.
// 方法1
$str = "sdfhletlsflahlajgfd;lsje;r;wj;ralajfe149253573";
echo "<pre>";

// 1.字符串分隔到数组中.
//$strArr  = str_split($str,5);
//print_r($strArr);

$strArr  = str_split($str);
print_r($strArr);

// 2.用于统计数组中所有值出现的次数,返回一个数组
print_r(array_count_values($strArr));

// 3.键名为原数组的键值,键值为出数
arsort($strArr);//按键值倒序
print_r($strArr);

//方法二 内存地址比较,如果地址数据存在就加1,反之则赋值为1。
$arr = str_split($str);
$con = array();
foreach ($arr as $v){
    if(!@$con[$v]){
        $con[$v]=1;
    }else{
        $con[$v]++;
    }
}
arsort($con);
print_r($con);

//方法三
$arr = str_split($str);
$unique = array_unique($arr);
//移除数组中重复的值,并返回结果数组(键名不变);
print_r($unique);
foreach($unique as $v){
    $arr2[$v] = substr_count($str,$v);
    //substr_count():计算某字符在字符串中出现的次数
}
arsort($arr2);
print_r($arr2);


Leave a comment

您的电子邮箱地址不会被公开。 必填项已用 * 标注