Подсчет количества вхождений числа в строку - PullRequest
2 голосов
/ 15 мая 2011

Я хочу посчитать количество вхождений каждого числа в данной строке. Например: -

'11 1 2 5 1 2 4 2 7 11 3002 221 3002'

Это строка с пробелами между числами. Я использовал str_wrd_cnt () и array_count_values ​​(), но str_word_cnt () считает только символы в строке.

Может кто-нибудь помочь мне с кодом?

Ответы [ 3 ]

4 голосов
/ 15 мая 2011

Вы хотите разбить строку на массив чисел, а затем посчитать значения.В PHP, возможно, вы бы сделали что-то вроде array_count_values(explode(' ', '11 1 2 5 1 2 4 2 7 11 3002 221 3002'))

1 голос
/ 15 мая 2011

Там:

function find($str, $number) {
    $start = 0;
    $count = 0;
    while (true) {
        $start = strpos($str, $number, $start);
        if ($start === false)
            break;
        $count++;
        $start++;
    }
    return $count;
}

echo find('11 14 11 12 11', '11');
1 голос
/ 15 мая 2011

Я не очень хорошо вас понимаю, но чтобы получить максимальное количество этих чисел, попробуйте следующее:

$string = '11 1 2 5 1 2 4 2 7 11 3002 221 3002';
$exp = explode(" ", $string);
$count = 0;
foreach($exp as $numbers) {
$count+=$numbers;
}
echo $count;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...