タグ

nipotanとperlに関するvkgtaroのブックマーク (4)

  • UTF-8 フラグと戦う人へ : にぽたん研究所

    ひさびさに Blog を書いてみる。 UTF-8 フラグがどうもウザいという人向けにこんな CPAN モジュールがあるそうな。 Unicode::RecursiveDowngrade hashref とか、arrayref とか複雑な構造になった変数 (たとえば XML や RSS を XML::Simple や XML::RSS 等で parse した構造) を、構造を変えることなく、値全ての UTF-8 フラグを一括で落としたい場合にベンーリ。 こんなんして使える模様。 use strict; use XML::Simple; use Unicode::RecursiveDowngrade; use Data::Dumper; my $ref = XMLin('hoge.xml'); # includes flagged UTF-8 my $rd = Unicode::Recursi

    UTF-8 フラグと戦う人へ : にぽたん研究所
    vkgtaro
    vkgtaro 2005/09/21
    「hashref とか、arrayref とか複雑な構造になった変数」のすべての値から、UTF-8 フラグを落としてくれるらしい。
  • CPAN モジュールがインスコされたパスを調べる時 - にぽたん研究所

    いつも、インスコした CPAN モジュールの .pm ファイルがある場所を探すのに、今までいい方法が思いつかずに % perl -MDBIx::Class -e'print $INC{"DBIx/Class.pm"}, "\n"' こんなんしてたわけだが、よくよく考えたら、こんな方法でイケることに気付く。 % perldoc -ml DBIx::Class あぁぁ、今まで同じ結果を求めるために、なんであんなに苦労していたんだろう…。 ちょっと .pm を書き換えてみたい時とかも % sudo $EDITOR `perldoc -ml DBIx::Class` いや、こんなんすればいいなんてラクだ…。 これって常識なのか? 知らないおいらが非常識?? 上記例のようにさ、DBIx::Class みたいな「そんなに長くないモジュール名」ならいいですよ。 でも長いと、そりゃもうウンザリっすよ。 %

    CPAN モジュールがインスコされたパスを調べる時 - にぽたん研究所
    vkgtaro
    vkgtaro 2005/08/11
    「perldoc -ml Foo::Bar」で、モジュールの Path を調べる。find してましたwwwww
  • 正規表現愛

    弊社には、アンチ正規表現の人がいますが、私は熱烈な正規表現 Lover である。 大崎氏の「Perl 正規表現雑技」とかは、正規表現 Lover 垂涎のコンテンツとして、ブラウザのリンクバーに入れている程である (嘘)。 正規表現は覚えてモノにすれば、シアワセになれる素晴らしい仕組みなのです。 昨日、Shibuya.pm のテクニカルトークに行った際「はてなでは XML 系の CPAN モジュールはあまり使っておらず、XML の parse には殆んど正規表現を使用している」という話が出てきて、嬉しさのあまり身震いした。 parser を書くのが面倒臭くて「XML::Simple 最強」とかホザいた自分に対しての自戒と、弊社の Chief Regular Expressioner という肩書を持つ (自称) 立場の人間として、たまには、正規表現ゴリゴリなネタでも書いてみようかなと思いますた

    正規表現愛
    vkgtaro
    vkgtaro 2005/05/15
    正規表現クロイスタの解説
  • 「切り捨て」に int() は使うべからず : にぽたん研究所

    Perl で、浮動小数点数の整数化 (小数点以下の切り捨て) をやる場合、 int() を常用していたけど、どうやら、これは基的に推奨されてないということを、今更ながら知る。 これって常識? % perldoc -f int int EXPR int Returns the integer portion of EXPR. If EXPR is omitted, uses $_. You should not use this function for rounding: one because it truncates towards 0, and two because machine representations of floating point numbers can sometimes produce counterintu- itive results. For exam

    「切り捨て」に int() は使うべからず : にぽたん研究所
    vkgtaro
    vkgtaro 2005/04/14
    int()使ってました。というか、小数点以下切り捨てるものだとばかり・・(;゚ロ゚)
  • 1