タグ

ブックマーク / perl-users.jp (4)

  • ヒアドキュメントの中でPerlの式を書く

    初代新幹線「0系」最後のラストランの日に、新幹線N700系のぞみでイーモバイルしながらこの記事を書いているid:TAKESAKOです。 Perlのヒアドキュメントを使うと複数行にわたる文字列を一気に代入したりするときに楽なので、使っている人も多いと思います。 my $foo = "bar"; my $tmp = time(); # ←関数の実行結果 print<<EOF; <div class="${foo}1"> <h1>TIME: $tmp</h1> </div> EOF しかし、ヒアドキュメントの途中でサブルーチンの実行結果も一緒に埋め込みたいときがでてくるときがあります。 @{[ Perlの式 ]} そのようなときは、@{[ リスト ]} というイディオムを使うと非常に便利です。 print<<EOF; <div class="${foo}1"> <h1>TIME: @{[ tim

    mimimu8
    mimimu8 2008/12/20
  • 非破壊な s/// のススメ

    正規表現の置換でときどき困るのは、元の文字列が変更されてしまうことです。そのため、たとえば文字列を URI escape する際には、以下のように別変数にコピーした上で、正規表現を適用することになります。 my $escaped = $search_str; $escaped =~ s/([^0-9A-Za-z_.!~*'()-])/'%' . uc(unpack('H2', $1))/eg; my $url = "http://example.com/search?q=$escaped"; 以前、この点がめんどくさいなーとブログに書いたところ、kazeburo さん他に以下のようなテクニックを教えていただきました。 use List::MoreUtils qw(apply); my $url = 'http://example.com/search?q=' . apply { s/([^

    mimimu8
    mimimu8 2008/12/20
  • perldoc を使いこなす

    国内滞在説が根強い miyagawa です。アメリカ合衆国国内という意味であれば、いつもそうなんですが。 今回は意外と知られていないと思われる perldoc コマンドの使い方を紹介します。perldoc は Perl モジュールに含まれる POD ドキュメントを整形して man 表示するツールで、perldoc モジュール名のようにして実行します。 % perldoc Web::Scraper -l オプションをつけるとそのモジュールのあるパス、-m オプションで POD の代わりにソースコードそのものを表示することができます。 % perldoc -l Web::Scraper /Library/Perl/5.8.6/Web/Scraper.pm # .pm ファイルを vi で開く % vi `perldoc -l Web::Scraper` # .pm ファイルを PAGER で開

    mimimu8
    mimimu8 2008/12/17
  • Perl-users.jp - 日本のPerlユーザのためのハブサイト

    Perl Mongers Perl Mongers とは、日各地に存在する、Perl ユーザーのコミュニティのことです。各種イベントが行われていますので、是非参加してみましょう。 Shibuya.pm Fukuoka.pm Kansai.pm (@kansaipm) Yokohama.pm (@yokohamapm) Hokkaido.pm (@hokkaidopm) Nagoya.pm (@nagoyapm) Kushiro.pm (@kushiropm) Kyoto.pm (@kyotopm) Kamakura.pm Niigata.pm (@niigatapm) Sendai.pm (@sendaipm) Tokyo.pm Hachioji.pm (@hachiojipm) Chiba.pm (@chibapm) Yomitan.pm (@yomitanpm) Machida.pm

    mimimu8
    mimimu8 2008/05/21
  • 1