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

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

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2008/04/22 00:22:09
  • 終了:2008/04/22 05:16:43

ベストアンサー

id:wizemperor No.1

wizemperor回答回数379ベストアンサー獲得回数522008/04/22 01:05:16

ポイント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

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

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

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

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

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません