トップ 最新 追記

ゆきのぶ日記


2007/04/06(Fri) [長年日記]

[] サーモグラス良い

この前に買ってきたサーモグラスを使って、焼酎をロックで呑んでみた。

ロックで飲んでいても、側面に水滴が全くつかないのには驚いた。それから、氷もだいぶ溶けにくいようで、時間をかけて呑んでも、酒は濃いまま。普通のロックグラスだと、最後の方では水のような酒になってしまうけど、最後まで濃い酒を味わうことができる。

これから、家で呑むときには、よく使うことになりそう。

本日のツッコミ(全5件) [ツッコミを入れる]

Before...

ゆかりん [喜んでもらえたならアウトレットに誘った甲斐があったというものだ。 なお、ダブルウォールグラスは薄く作ってるため意外..]

ゆきのぶ [いやー良かったよ。今までのロックとは何かが違うね。 割れやすいのは、なんとなく洗っててそんな気がするよ。 ただ、そん..]

まさと [へえ、サーモグラスですか。初めて聞きました。 グラスの外に水滴がつかないんですか。良さそうですね。 どこかで見かけた..]


2007/04/15(Sun) [長年日記]

[Prog][Perl] Template::Extract と Unicode

主に自分用メモ。

Template::Extract を使って、WWW::Mechanize から取得した charset=utf-8 な html を解析しようとしたが、どうにもうまくいかない。template の内容にかかわらず、extract メソッドは常に undef を返す状態だった。何もマッチしなくて良いから、せめて {} くらいは返して欲しいのに。

同じ html を IE から取得してメモ帳からソースを保存したものを読み込んだ場合、ちゃんと解析できる。違いを調べてみたところ BOM (Byte Order Mark) ではないかと推測。下のように強引に BOM を付けてみたところ、解析に成功するようになった。

$doc_with_bom = "\xef\xbb\xbf" . $doc;

Data::Dumper を使っても表示されない違いだったので、解決に二日くらいかかってしまった。うーむ。

しかし、もっとスマートな方法はないものか。

(追記)

上記のトラブルは、そもそも template ファイルに BOM があったのが原因だった。template を BOM なしのファイルとして保存すると、問題は解決した。こっちの方がスマートですな。

BOM の有無を区別する場合、BOM なしの UTF8 エンコーディングのことを特に UTF8N と言うそうだ。Perl 周りではそのような区別はしていないようで、UTF8N を UTF8 と呼んでいる感じ。

文字コードは、まだよく分かっていないことが多いなぁ。

本日のツッコミ(全2件) [ツッコミを入れる]

ばたっち [ゆきのぶさん、Perler?]

ゆきのぶ [ええ。かなり Perl な人です。]