2008/12/14
Perlで書く 2008.12.14 Vol.224
===================================================================== Perlで書く 2008.12.14 Vol.224 [WAZA]関数の結果で置換する http://www2u.biglobe.ne.jp/~MAS/perl/ ===================================================================== ●関数の結果で置換する eオプションをつけると置換処理の際に関数を利用できます。 --------------------------------------------------------------------- use strict; use warnings; my @items = ( '0: hoge', '1: fuga', '2: piyo', ); foreach my $item (@items) { my $str = $item; # 先頭の数字部分をplus()で処理した結果で置換する $str =~ s/^(\d+)/plus($1)/e; print $str, "\n"; } # 数字を一つ増やす sub plus { my $val = shift; return $val + 1; } __END__ 実行結果 1: hoge 2: fuga 3: piyo --------------------------------------------------------------------- 無名関数を使って処理することもできます。 --------------------------------------------------------------------- use strict; use warnings; my @items = ( '0: hoge', '1: fuga', '2: piyo', ); foreach my $item (@items) { my $str = $item; # 先頭の数字部分を処理した結果で置換する $str =~ s/^(\d+)/sub { $_[0] + 1 }->($1)/e; print $str, "\n"; } __END__ 実行結果 1: hoge 2: fuga 3: piyo --------------------------------------------------------------------- ●関連項目 なし ===================================================================== ■雑記 「Perlで書く」読者のみなさんこんにちは。 ぼくは木村といいます。 今回は、発行者のMASさんにかわりまして、 ぼくがPerl関連のおすすめ情報をおとどけしたいと思います。 ぼくもPerlプログラミングに関する無料のメールマガジン(メルマガ)を 発行しておりまして…。 せっかくなので今回はその情報をおとどけしたいと思います。 Perl/CGIプログラミング学習講座 https://www.programminginnercircle.com/mailmagazine.html あなたがPerlプログラムを自由に扱えるようになることを目標としている メルマガです。 このメルマガを読むことにより、「プログラミング」というどこか捉え どころのない現象が、非常に具体的なものとしてあなたの頭に焼きつく ことでしょう。 ぜひ、読んでみてください。 あなたの貴重な時間、絶対に損はさせませんから。 Perl/CGIプログラミング学習講座 https://www.programminginnercircle.com/mailmagazine.html --------------------------------------------------------------------- 木村さんに雑記を書いていただきました。「Perl/CGIプログラミング学習 講座」の内容を少し教えていただきましたが、初心者向けに詳しく解説が 書かれていました。CGIのプログラムを書いてみたいという方はメルマガを 購読してみてはいかがでしょうか。 ===================================================================== Perlで書く(マガジンID:0000109251) 配信数:838 発行者:MAS 本メールマガジンに関するご意見・お問い合わせは t-masuda@mvd.biglobe.ne.jp までお寄せ下さい。 解除 http://www2u.biglobe.ne.jp/~MAS/perl/magazine.html 検索 http://www2u.biglobe.ne.jp/~MAS/perl/search/index.html バックナンバー http://archive.mag2.com/0000109251/index.html RSS http://archive.mag2.com/0000109251/rss10.xml 本メールマガジンは「まぐまぐ」 http://www.mag2.com/ を利用して発行 しています。 =====================================================================


