• ベストアンサー

マルチバイトの文字列の検索方法

いつもお世話になります。 マルチバイトの文字の中から検索した文字が含まれているかどうか を調べる方法を教えて下さい。 判定結果として$_GET['hantei']から受けた値は次のようになります。 "朝昼夜" "朝昼" "昼夜" など朝・昼・夜の3文字の組み合わせの中から 朝が含まれているかどうか 昼が含まれているかどうか 夜が含まれているかどうか を検索して含まれているとTRUEを返すようにしたいのですが、 よく分かりません。どうぞ御指導下さい。

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

<?php $array=Array("朝昼夜","朝昼","昼夜"); foreach($array as $val){ print "「{$val}」には・・・<br>"; print " 「朝」は".(preg_match("/朝/",$val)?"含まれている":"含まれていない")."<br>"; print " 「昼」は".(preg_match("/昼/",$val)?"含まれている":"含まれていない")."<br>"; print " 「夜」は".(preg_match("/夜/",$val)?"含まれている":"含まれていない")."<br>"; } ?>

nicolemen
質問者

お礼

ありがとうございます。 うまく期待した通りの処理ができました。 感謝します。 今後ともどうぞよろしくお願いします。

その他の回答 (1)

  • onosuke
  • ベストアンサー率67% (310/456)
回答No.1

mb_ereg_match() などのmbstring関数(マルチバイト文字列関数)を利用することで対応可能です。 # なお、前提条件として、PHPの環境設定が # mbstringについて正しく設定されていることが必要です。

参考URL:
http://www.ipc.hokusei.ac.jp/~z00104/php_manual/function.mb-ereg-match.html
nicolemen
質問者

お礼

ありがとうございます。 処理のヒントを頂き、うまく処理をすることができました。 感謝致します。 これからどうぞよろしくお願いします。

関連するQ&A

専門家に質問してみよう