5部 関数リファレンス

unpack

unpack TEMPLATE, EXPR



unpackpackの逆を行ないます。バイナリデータの構造体を含む文字列EXPR
を受け取り、それをリスト値に展開して返します。スカラコンテキストでは、最初の値を返します。TEMPLATEは、pack関数と同じフォーマットを使います。

unpackの使い方

unpack "C", $word; 

unpackで部分文字列を取り出す

unpackで部分文字列を取り出すことができます。大量の値を一度に取り出すときは、substrよりも高速です。

$a = "It's funny how money change a situation";

# 5文字進んで、5文字取り出す
print unpack( "x5 A5", $a );
> funny

関連記事