質問: やりたいこと ------- Google CSEを使って検索結果を自動取得するプログラムを作っています。 検索対象となるテキストは日本語と英数字が混在しています。 そこから日本語のみを削除して、英数字のみで検索したいと考えています。 [問題] そこで日本語をpreg_replaceで削除すると、英数字の間に空白が無くなり、検索ができなくなりました。 逆に日本語を空白で置き換えると、空白が非常に多くなり再び検索ができなくなりました。 日本語の固まりを空白1つに置き換えることはできないでしょうか? プログラム ------ ``` // 半角英数字以外の文字列は除去 return preg_replace('/[^0-9a-zA-Z]/', ' ', $text); ```
回答: ``` preg_replace('/[^0-9a-zA-Z]+/', ' ', $text); ```