作者: Bruce.
日時: 2004/9/28(21:59)
Bruce. です。

今日気がついたのですが、pack()/unack()のformat文字列に()が使えるんですね。

$str = "414243";
@foo = map {hex} unpack("(a2)3", $str);
print join(',', @foo), "\n";

  →65,66,67

いろいろと調べてみると、5.8で追加されたもののようで。

そのときに一緒に見つかったのが
  
   *length-item*"/"*string-item*

という指定。こっちは5.6で追加されたものですね。文字列の長さを文字列の
前に置いたものです。

で、Rubyはどうなんだろうと試してみると

Ruby
#foo = "414243".unpack("a2a2a2").map{|x| x.hex}
foo = "414243".unpack("(a2)3").map{|x| x.hex}
print foo.join(','), "\n";

  →65

エラーにはなりませんが無視されました。
#perldeltaもきちんと読まんとあかんなあ・・・

-- 
木村浩一
  I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
  mail kbk@...
  web  www.kt.rim.or.jp/~kbk/