• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:iモードの絵文字16進数の正規表現について)

iモードの絵文字16進数の正規表現とは?

kazu-kunの回答

  • ベストアンサー
  • kazu-kun
  • ベストアンサー率31% (72/232)
回答No.1

単なるパターンマッチでは上手く行かないので私は以下のようなスクリプトを書きました。参考にして下さい。 sub han2zen{ local($input_string) = @_; $temp_string = '';#空の文字変数を用意 $temp_position = 0; $sjis_flag = 0; $zenkana_table = '。「」、・ヲァィゥェォャュョッーアイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワン゛゜'; &jcode'convert(*zenkana_table,"sjis"); while($temp_position < length($input_string)){ $temp_figure = substr($input_string,$temp_position,1); #sjisの上位バイト if ($sjis_flag == 1){ $temp_string = $temp_string.$temp_figure; $sjis_flag = 0; }elsif (ord($temp_figure) >=129 && ord($temp_figure) <= 159 || ord($temp_figure) >=224 && ord($temp_figure) <= 239){ $sjis_flag = 1; $temp_string = $temp_string.$temp_figure; }elsif (ord($temp_figure) >=248 && ord($temp_figure) <= 249){ $temp_position++; $sjis_code = ord($temp_figure)*256+ord(substr($input_string,$temp_position,1)); # $temp_string = $temp_string."&#$sjis_code;".chr(59); $temp_string = $temp_string."&#$sjis_code\x3b"; }elsif (ord($temp_figure) >=161 && ord($temp_figure) <= 223){ $temp_string = $temp_string.substr($zenkana_table,(ord($temp_figure)-161)*2,2); }else{ $temp_string = $temp_string.$temp_figure; } $temp_position++; } $temp_string; }

kodai_sumio
質問者

お礼

返事が遅くなってしまってスイマセン! とても参考になりました。ありがとうございました。

関連するQ&A

  • iモードの絵文字について

    iモードの絵文字をwindows98でShift-JISのバイナリコード入力でやるにはどのようにするとできるのですか? 教えてください。

  • perlでiモードHTMLを書出す時

    perl初心者です。 基本的なことを教えてください。 万能ではありませんが、perlでブラウザを判別してiモードとezwebに対応したHTMLを出力するスクリプトを作ってみようかと思っています。 そこでiモードHTMLは文字コードがShift_JIS固定と何かで読んだことがありますが、これを書出すスクリプトをShift_JISで記述すると何か問題が起こるものなのでしょうか。 教えてください。

    • ベストアンサー
    • CGI
  • iモードの絵文字が白黒で表示されるのはなぜ?

    iモード対応の携帯WEB作成しています。なるべく他のキャリアにも対応できるようにシンプルな下記ソースで作っていますが、Docomoの絵文字を基本で、10進数コード又はDocomoでダウンロードできる絵文字入力ソフトによるバイナリ絵文字入力で行っていますが、実際にできたコンテンツみる環境がなく、Auでは問題あくカラーで絵文字が表示されますが、友人のドコモでみると、絵文字部分が白黒で表示されます。Docomoの絵文字一覧リストのようなメールで表示されるようなカラーで表示させるにはどのようにしたらいいのですか?それともWEBは白黒表示なのですか?いろいろ調べてもわかりません。できるだけの、情報アドバイスを頂けたらと思います。 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis"> <title>タイトル</title> </head> <body> コンテンツ </body> </html>

  • Iモードの隠れ絵文字、どこに行けば!?

    Iモードの絵文字に、隠れ絵文字、あるんですね。この間、木馬とかのメール貰って…実用的なものは見つけたんですが、かわいい絵文字を探してます。知っている方、教えてください。

  • 文字数の正規表現について

    perlであるフォームから数字だけ(4桁)入力してもし4個以外の文字だったらエラー表示としたいのですが if($valueが4個の文字数でないとき){エラー} とした場合($valueが4個の文字数でないとき)の部分はどのように表現す れば良いでしょうか?

    • ベストアンサー
    • CGI
  • iモードのちゃっとで絵文字を・・・

    iモードのチャットにいって絵文字が文字化けしない方法&絵文字が使えるようにダウンロードでフォントを手にいれる方法&使用できる方法をどうか教えてください!

    • 締切済み
    • Mac
  • Shift-jisで正規表現

    はじめまして。Perl初心者です。 やりたい事は、フォームからPOST形式で文字データを受け取り、 用意してあるtxtファイルから読み込んだデータの中から、正規表現でマッチするものを探すことです。 Windows環境であることと、入力(フォーム)も出力(表示するブラウザ等)もShift-jisなので、shift-jisで限定しています。 特にencodingを指定しなくても、ひらがなと漢字では上手くいきます。 カタカナと全角数字を入力したとき、上手くいきません。 色々調べていたら、以下のサイトさんで近いことが紹介されていました。 http://homepage1.nifty.com/nomenclator/perl/shiftjis.htm#solutions しかし、自身では力不足のため、解決出来ないでいます。どなたか詳しい方、ご教授お願いいたします。

  • iモードからの絵文字が見れません?!

    WIN98,OE6です。 iモードからのメールをPCで受信しますが、=(イコールみたいなのの太い二本線)があるので何かな…と思っていました。 それが絵文字らしいと言うことを最近聞きました。どうしたら見れますか? また、 一度開封したメールの絵文字はもう見れないのでしょうか? どなたかおわかりになられる方いらっしゃいましたら、 教えてください。 宜しくお願い致します。

  • JavaMailでiモードの絵文字を送信する際のcharset

    こんにちは。 OS:Windows2000 JDK:JDK1.4.1 JavaMail:JavaMail1.2 の環境で、iモードの絵文字を含んだ本文をメール送信するとき、 本文のcharsetをwindows-31jにしないと 文字化けが起こってしまいます。 これをcharsetの指定を、iso-2022-jpやShift_JISにして 文字化けしないようにするにはどのようにしたらよいか、ご存知の方がいらっしゃいましたら教えてください。 よろしくお願いいたします。

  • 携帯からフォーム投稿した絵文字の表示

    PHPとMySQLで携帯用の掲示板を作成しているのですが、フォームから絵文字を投稿すると?マークになってしまい表示されません。 どのような問題が考えられるでしょうか?PHPファイルはShift_JISで、MySQL(3.23.58)はeucです。文字コードの問題なのでしょうか?

    • ベストアンサー
    • PHP