電子書籍の厳選無料作品が豊富!

「おしえて goo Okwave goo おしえて」 のように単語が半角スペースで区切られています。この単語で同じもの(ここでは"おしえて"と"goo")を1つにし 「おしえて goo Okwave」のように変換することは可能なのでしょうか?

よろしくお願いします。

A 回答 (4件)

------------------------------------------------


$str = "おしえて goo Okwave goo おしえて";
// 半角スペースを区切り文字とし、配列に格納する
$array = explode(" ", $str);
// 重複した値を除去する
array_unique($array);
// 配列の要素を半角スペースで連結する
$result = implode(" ", $array);
-------------------------------------------------

もしくは、

-------------------------------------------------
$str = "おしえて goo Okwave goo おしえて";
// 半角スペースを区切り文字とし、配列に格納する
$array = explode(" ", $str);
// 値をキーとして重複を除去する
$tmp_array = array();
foreach($array => $value) {
$tmp_array[$value] = $value;
}
// 配列の要素を半角スペースで連結する
$result = implode(" ", $tmp_array);
-------------------------------------------------

配列関数には他にも色々あるので調べてみてください。

参考URL:http://jp.php.net/manual/ja/function.array-uniqu …
    • good
    • 0
この回答へのお礼

回答ありがとうございました。

お礼日時:2006/02/27 17:01

配列に落として、ユニークなものを拾うのが


楽かもしれませんね

<?PHP
$txt="おしえて goo Okwave goo おしえて";
$txt=implode(" ",array_unique(explode(" ",$txt)));
print($txt);
?>
    • good
    • 0
この回答へのお礼

大変参考になりました。ありがとうございました。

お礼日時:2006/03/01 11:17

訂正です。



> // 重複した値を除去する
> array_unique($array);

// 重複した値を除去する
$array = array_unique($array);
    • good
    • 1
この回答へのお礼

ありがとうございます。

お礼日時:2006/03/01 11:16

スペースでexplodeして一旦配列にいれarray_uniqueで重複値を削除しスペースでimplodeしたら出来ます。

    • good
    • 0
この回答へのお礼

なるほど、ありがとうございました。

お礼日時:2006/02/27 00:58

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!