ある文字列から、特定の文字列だけを削除した文字列を出す方法

https://himaise.com/php/

例えば、risfokeladuwという適当な文字列から、「a、i、u、e、o」を除いたrsfkldwという文字列を出したい。

やり方は色々とある。

一旦思った方法。strposで、その特定文字列を含むかどうかを出し、含むならその配列を作る。
これが例えば、aとAという感じで、小文字、大文字という二つのケースがあるなら、両方含めて考えないと正しく出せなそう。
以下は、片方のケースで考えているが、小文字と大文字両方含むケースでも条件出さないと駄目っぽい。
そして、その出した配列$mojiについて、与えられている文字列$vowelに含まれていれば、$mojiに関して、"(空文字)に置き換える処理をstr_replace()でしている。
strpos→str_replaceという流れ。

これ以外にも出し方は色々とあると思う。コメントください(__)

<?php
    $vowel = fgets(STDIN);
    if(strpos($vowel ,'a') !== false || strpos($vowel ,'e') !== false 
    || strpos($vowel ,'i') !== false || strpos($vowel ,'u') !== false || strpos($vowel ,'o') !== false){
        $moji = ['a','e','i','o','u'];
    }
    if(strpos($vowel ,'A') !== false || strpos($vowel ,'E') !== false 
    || strpos($vowel ,'I') !== false || strpos($vowel ,'U') !== false || strpos($vowel ,'O') !== false){
        $moji = ['A','E','I','O','U'];
    }
    $str = str_replace($moji,'',$vowel );
    echo $str; 

php, programming

Posted by himajinn