亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何設置大寫字符等于小寫字符,PHP

如何設置大寫字符等于小寫字符,PHP

PHP
當年話下 2022-07-09 16:36:14
我為文本中的重復字符計數創建函數,我對大寫和小寫字符有問題,大寫不計數,因為與小寫不一樣,我的問題是,我如何計算大寫字符?    <?phpfunction fillCharCounts($str, $count) {     for ($i = 0; $i < strlen($str); $i++)         $count[ord($str[$i])]++;     for ($i = 0; $i < 256; $i++)         if($count[$i] > 1)             echo chr($i) . " " .                           ($count[$i]) . "\n"; } function printDups($str) {     $count = array();     for ($i = 0; $i < 256; $i++)     $count[$i] = 0;     fillCharCounts($str, $count); } $str = "Nama saya Adhi Dewandaru"; $str = preg_replace("/([^A-Za-z])/","",$str); printDups($str); 但輸出總是顯示 a 6 d 2預期輸出為a 7d 3
查看完整描述

2 回答

?
喵喔喔

TA貢獻1735條經驗 獲得超5個贊

僅更新此功能


function fillCharCounts($str, $count) 

for ($i = 0; $i < strlen($str); $i++) 

    $count[ord(strtolower($str[$i]))]++; 


for ($i = 0; $i < 256; $i++) 

    if(($count[$i] > 1 && $i == '097' || $i == '100'))

        echo chr($i) . " " .  

                     ($count[$i]) . "\n"; 

  } 

輸出將是


a 7 d 3


查看完整回答
反對 回復 2022-07-09
?
米琪卡哇伊

TA貢獻1998條經驗 獲得超6個贊

這更容易解決,方法是使用 將字符串轉換為小寫,使用strtolower將其拆分為單個字符str_split,然后使用 計算值array_count_values,最后使用 過濾掉非重復項array_filter:


$str = "Nama saya Adhi Dewandaru"; 

$dups = array_filter(array_count_values(str_split(strtolower($str))), function ($v) { return $v > 1; });

print_r($dups);

輸出:


Array

(

    [n] => 2

    [a] => 7

    [ ] => 3

    [d] => 3

)

如果您不希望輸出中包含特定字符,則可以進一步過濾此數組:


$dups = array_filter($dups, function ($v, $k) { return !in_array($k, array(' ', 'n')); }, ARRAY_FILTER_USE_BOTH);

print_r($dups);

輸出:


Array

(

    [a] => 7

    [d] => 3

)

或將其與上一個過濾器結合使用:


$str = "Nama saya Adhi Dewandaru"; 

$dups = array_filter(array_count_values(str_split(strtolower($str))), function ($v, $k) { return $v > 1 && !in_array($k, array(' ', 'n')); }, ARRAY_FILTER_USE_BOTH);

print_r($dups);

輸出:


Array

(

    [a] => 7

    [d] => 3

)


查看完整回答
反對 回復 2022-07-09
  • 2 回答
  • 0 關注
  • 111 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號