タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

perlとencodingに関するyuguiのブックマーク (5)

  • UTF8 フラグあれこれ - daily dayflower

    UTF8 フラグについてわかってるつもりだったんですが,utf8::is_utf8 considered harmful - Bulknews::Subtech - subtech を読んで混乱したので,自分なりにまとめてみました。間違いがありましたらご指摘よろしく。 まとめ スカラー変数の内部表象の状態を示すものとして UTF8 フラグというものがある スカラー変数は(リファレンス等は別として)下記のものを格納できる (A) 文字列(内部表象: UTF-8) (B) 文字列(内部表象: ISO-8859-1) (C) バイナリ列 純粋なバイナリストリーム(画像ファイル等)かもしれないし, UTF-8 octet stream かもしれないし, CP932 octet stream かもしれないし,etc, etc ... Perl は(後方互換性確保などの理由から)ISO-8859-1

    UTF8 フラグあれこれ - daily dayflower
  • HTML Numeric character references - mumumuの日記

    http://www.w3.org/TR/html401/charset.html#h-5.3.1 HTML中では、数値文字参照という形で、文字を表す ために「&#」に続けてUnicodeのコードポイントを 挿入することが許されている。Webページや果てはRSS においてさえ、これが挿入されているケースが存在し ている。身近なところでの良い例はEngadget Japanese があげられるだろう。 巷では、日語の文字列をこの数値文字参照に変換す るケースは結構存在している。しかし、rss2imap等で は、この逆の処理、つまり数値文字参照を文字に変換 する処理が必要である。 ---- perl -MEncode -p -i -e ' s/\&#(x)?([a-f0-9]{1,5});/ my $tmpstr = ($1) ? pack( "H*", sprintf( "%08s", "

  • Email::Valid に 内部 utf8 文字列を渡すとはまる - daily dayflower

    use utf8; use Email::Valid; print Email::Valid->address('日語@ドメイン.です') ? 'OK' : 'NG', "\n";の結果は「OK」となります。Email::Valid::Loose でもそうなります。 国際化ドメインとして考えるのならいいのですかね?でもその場合でも local-part(@ より前の部分)が ALNUM 等じゃないのは RFC 2822 でもまだ違反な気がします(識者の方教えてください)。 原因は以下のようなことだと思います。 Email::Valid で利用されている $RFC822PAT という正規表現は Jeffrey Friedl の Mastering Regular Expressions を引用したみたいなのですが,こちらをご覧いただくとわかるとおり,NonAscii が [\x80-\xf

    Email::Valid に 内部 utf8 文字列を渡すとはまる - daily dayflower
  • Unicode::Normalize で遊ぶ - daily dayflower

    Unicode の規格では,文字の合字(リガチャ等)等を統一的に扱えるように,「正規化」という処理が仕様として定まっています。この正規化処理のうち「互換性分解」という処理を行うと副作用として半角カナを全角カナに変換できます(逆に全角カナ→半角カナはできません)。 #!/usr/bin/perl use strict; use utf8; use Encode; use Unicode::Normalize; my $src = 'ポンジュース'; my $dst = Unicode::Normalize::NFKC($src); print Encode::encode('utf8', "${src} => ${dst}\n"); # OUTPUT is: ポンジュース => ポンジュースUnicode の正規化についてはperl5.8のUnicodeサポート および http:/

    Unicode::Normalize で遊ぶ - daily dayflower
  • daily dayflower - 半角←→全角変換,Unicode::Japanese に未公開機能が…

    2008-10-21 追記 いまだに(ありがたいことですが)検索で飛んできたりブクマされたりというのがちょいちょいあるので,最新動向を書いておきます。 id:tokuhirom さんが Lingua::JA::Regular::Unicode という Pure Perl Module をリリースなさいました(→ http://d.hatena.ne.jp/tokuhirom/20081018/1224300947)。 あなたが作っているアプリで文字列まわりを Unicode::Japanese インスタンスですべて持ちたいわけでなければ(そして,たいていのばあい,持つ必要はないのですが),この Lingua::JA::Regular::Unicode を使うのがベターです。依存性もなく,とても軽量ですので。 2008-10-21 追記おわり ウェブアプリを作っていると,ユーザが入力した半角

    daily dayflower - 半角←→全角変換,Unicode::Japanese に未公開機能が…
  • 1