新規記事投稿 フォロー記事投稿 記事のキャンセル
From: くろみつ <kuromitu@mxb.maple.or.jp>
Subject: Re: 特殊文字の抜き出しについて
Date: 2000/06/09 15:12:09
Reference: mesh.program/00698

にあさん、お忙しい中、早速の返信ありがとうございました。
詳しい説明なので、よくわかります。

6月8日に、にあさんは書きました。

>とりあえずEZとは何の事だか分からないんですが、(^^;; ドコモの絵文字リストを見ると、
>ずいぶん飛び飛びにコードが割り当てられているんですね。
EZというのは、DDIセルラーやIDOなどで使っているEZWebとEZAccessのことです。
PCのHTML,imodeのC-HTMLに対して、EZはHDMLという言語(正確にはWAP上で動くらしい...詳しい事はよくわかりません。)を使っていて、これがちょっとやっかいなんです。

>perlのヴァージョン5を使っているなら、上の簡単な式の代わりに、
>
>$re_ascii     = '[\x00-\x7F]';
>$re_sjis_c    = '[\x81-\x9F\xE0-\xFC][\x40-\x7E\x80-\xFC]';
>$re_sjis_kana = '[\xA1-\xDF]';
>$re_emoji     = '\xF8[\x9F-\xFC]|\xF9[\x40-\x49\x72-\x7E\x80-\xB0]';
>
>$str =~ s/\G((?:$re_ascii|$re_sjis_c|$re_sjis_kana)*?)(?:$re_emoji)/$1〓/g;	# 複雑な式
>
>とすれば、正しく、
>
>「半角カナ(カナ)やAlphabetが有っても絵文字(〓〓)は除けるけど、需要とかも化けてしまうかも?」
>
>となります。
>
># perl4だと、前回の一致位置のしっぽ(\G)も最短一致(*?)も無いので、
># ループを回さなくてはいけないでしょうから面倒そう。取りあえずperl4版はパスです。(^^;
使っているperlは5です。(よかった。すみません、最初に書くのを忘れていました。)

さっそく、使ってみます。