php ile bir dize büyük harf saymak için basit, kısa yol?

1 Cevap php

Ben belirli bir dize büyük harf sayısını saymak için kısa, basit ve en zarif yolu arıyorum.

1 Cevap

Bu kısa değil, ama bir regex yürütülecek yok gibi belki basit olduğunu. Normalde ben mantık ve kontroller basit olarak bu hızlı olmalı derdim, ama PHP her zaman diğerlerine göre ne kadar hızlı ve yavaş bazı şeyler beni şaşırtıyor.

function capital_letters($s) {
    $u = 0;
    $d = 0;
    $n = strlen($s);

    for ($x=0; $x<$n; $x++) {
        $d = ord($s[$x]);
        if ($d > 64 && $d < 91) {
            $u++;
        }
    }

    return $u;
}

echo 'caps: ' .  capital_letters('HelLo2') . "\n";