hogehoge foobar Blog Style Beta

Web,Mac,Linux,JavaScript,Perl,PHP,RegExp,Git,Vim,Redmineなど技術的なことのメモや、ちょっと便利そうなものの紹介をしています。

[]2009/11/18[Wed]

  • 23:55  JavaScriptのString.replaceの第2引数に関数オブジェクトを渡せることを知った。JSたのしー。str.replace(/hogehoge/g,function(m){ return '<' + m + '>'; });
  • 03:07  すいすい睡眠グzzz
  • 03:07  スライスは[1, 3, 5・・]のような形式で可能。my($first, $last) = (sort @rank)[0, -1]; 記述する順番は関係ない。my @num = @name[ 5, 1, 0 3, 2 ];
  • 03:03  リスト要素の変換にはmapを使用する。my @format_data = map { $_ * 2 } @data;
  • 02:53  grepを使えば1000から奇数のみ取り出す処理をforを使わずに書ける。my @odd_num = grep { $_ % 2 } 1..1000 
  • 02:49  Perlではevalで致命的なエラーをキャッチ出来る。evalブロックが終わった後で$@にエラーメッセージが格納される。
  • 02:47  リャマ本の第17章(練習問題除く)まで終了。17章の練習問題は後日やる。
  • 01:34  %SIGハッシュへ代入することでシグナルハンドラを設定可能。%SIG{'INT'} = 'int_handler';
  • 01:32  プロセスをファイルハンドルとしても使える。例えばメールを送るときは→ open MAIL, "|mail hoge" or die "cannot pipe to mail $!";
  • 01:30  コマンド出力を取り込むには逆クォート(``)で囲む。my $now = `date`;リストへの取り込みは行毎に分割して格納される。my %who_lines = `who`;
  • 01:26  リャマ本の第16章まで終了。systemはコマンドの実行終了までPerlが待ち。execはコマンドを実行したら後はバイバイ知らんぷり。