[PHP-users 35106] Re: str_replaceの使い方に関して

ykt study @ hinami.net
2010年 4月 13日 (火) 15:06:04 JST


yktと申します。

>> $search  = array('A', 'B', 'C', 'D', 'E');
>> $replace = array('B', 'C', 'D', 'E', 'F');
>> $subject = 'ABCDE';
>> echo str_replace($search, $replace, $subject);

例のケースだけで言えば単純に、

$search  = array('E', 'D', 'C', 'B', 'A');
$replace = array('F', 'E', 'D', 'C', 'B');

ではだめでしょうか?
searchとreplaceのそれぞれ先頭の要素から順に置換されていくので、後ろから置換してやれば
例通りの結果が得られるかと思います。

2010年4月13日14:43 akio tenman <a.tenman @ gmail.com>:
> はじめまして よろしくお願いします。
>
> 投稿自体初めてで、恐ろしいのですが、置換側をエンコードするような考え方ではだめでしょうか?
>
> $search  = array('A', 'B', 'C', 'D', 'E');
> $replace = array('&#66;', '&#67;', '&#68;', '&#69;', '&#70;');
> $subject = 'ABCDE';
> $result = html_entity_decode(str_replace($search,$replace,$subject));
>
> echo $result."\n\n\n";
>
>
>
> 2010年4月11日17:46 mao <mao @ nextyle.com>:
>> お世話になります。MAOです。
>>
>> 初歩的な質問ですみません。
>>
>> $search  = array('A', 'B', 'C', 'D', 'E');
>> $replace = array('B', 'C', 'D', 'E', 'F');
>> $subject = 'ABCDE';
>> echo str_replace($search, $replace, $subject);
>>
>> としたばあい、
>> FFFFF
>> となると思うのですが、
>> これを、BCDEFの結果を得たい場合は、
>> どうすればよいのでしょうか?
>>
>> preg_replace_callbackを使えばよいのかとおもい、
>>
>> $search  = array('A', 'B', 'C', 'D', 'E');
>> $replace = array('B', 'C', 'D', 'E', 'F');
>> $subject = 'ABCDE';
>> echo preg_replace_callback("/[".join("",$search)."]/",create_function(
>> '$matches',
>> 'Global $search,$replace;return str_replace($search, $replace, $matches[0]);'
>> ),
>> $subject
>> );
>>
>> なども試してみましたが、結果は同じでした。
>>
>> よろしくお願いいたします。
>>
>> --
>> MAO
>> mao @ nextyle.com
>> _______________________________________________
>> PHP-users mailing list  PHP-users @ php.gr.jp
>> http://ml.php.gr.jp/mailman/listinfo/php-users
>> PHP初心者のためのページ - 質問する前にはこちらをお読みください
>> http://oldwww.php.gr.jp/php/novice.php3
>>
> _______________________________________________
> PHP-users mailing list  PHP-users @ php.gr.jp
> http://ml.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読みください
> http://oldwww.php.gr.jp/php/novice.php3
>


PHP-users メーリングリストの案内