PHPで、たとえば「今日はGoogleでGiantsの検索をした」というテキストから、

1)全角文字のみを削除して、半角文字(GoogleGiants)だけを残す。
2)漢字のみを削除する。ひらがなやカタカナは半角化で残して(ハGoogleデGiantsノヲシタ)
ということが可能なのでしょうか?
よろしくお願いします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2008/04/22 05:16:43
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:wizemperor No.1

回答回数379ベストアンサー獲得回数52

ポイント60pt

1)は簡単です。色々方法はありますが、

$text = "今日はGoogleでGiantsの検索をした";
$text = preg_replace("/[^!-~]+/", "", $text);

とか。

2)はこんな感じでたぶんうまくいくかと(未確認)。

$text = "今日はGoogleでGiantsの検索をした";
$text = preg_replace("/[一-龠]+/u", "", $text);
$text = mb_convert_kana($text, "kh", "utf-8");

http://jp2.php.net/manual/ja/function.mb-convert-kana.php

id:lifepath

ありがとうございます!

2)は、その3行だけを実行したらうまくいきましたが、

既存のデータをつっこんでみるとうまく処理できませんでした(^_^;)

おそらく文字コードの問題だと思うので、

それは自力で解決します。

ありがとうございました!

2008/04/22 05:16:16

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません