Perlプログラミング入門ゼミ

Perlでテキスト処理、Linuxサーバー管理、Webシステム開発

Dモジュール - データをエンコードし標準エラー出力へダンプ

Dモジュールは、データをエンコードし標準エラー出力へダンプするユーティリティ関数を提供します。

インストール

cpanmでインストールする方法

$ cpanm install D

githubからダウンロードしてインストールする方法

$ git clone https://github.com/YoshiyukiItoh/D.git
$ cd D
$ perl Makefile.PL
$ make
$ make test
$ make install

利用例

Dモジュールは、以下のように利用します。

use utf8;
 
# dw, du, dn関数をexportします
use D;
 
# デコードされた文字列を含むデータ(リファレンス)を準備します
my $data = [{name => 'あ'}, {name => 'い'}];
 
# リファレンスデータをエンコード(utf8)し標準エラー出力にダンプします
du $data;
 
# リファレンスデータをエンコード(cp932)し標準エラー出力にダンプします
dw $data;
 
# リファレンスデータをエンコードせずに標準エラー出力にダンプします
dn $data;

特徴

  • du, dw, dn関数をエクスポートします。これらの関数名は、2文字のため'p' などのデバックコマンドと競合しないでください。
  • du, dw関数はリファレンスデータの全ての文字列をエンコードします。
  • duは'dump UTF-8'の短縮名です。
  • dwは'dump Windows cp932'の短縮名です。
  • dnは'dump no encoding'の短縮名です。
  • One Linerは便利です。'use D; du $data;' or 'use D; dw $data;' or 'use D; dn $data;'
  • Data::DumperのDump関数を使用してデータをダンプします。
  • 行番号とファイル名を標準エラーへ出力します。
  • ダンプされたデータのハッシュのキーでソートします。
  • Data::Dumperのデフォルトとは異なり、'$VAR1 ='を出力しません。

エクスポートする関数

du, dw, dn関数をエクスポートします。

関数

du関数

リファレンスデータ内のすべての文字列をUTF-8にエンコードし、リファレンスデータをファイル名, 行番号とともに標準エラー出力へダンプします。

引数が文字列などの参照データでない場合も、リファレンスデータと同じ方法でダンプされます。

dw関数

リファレンスデータ内のすべての文字列をCP932にエンコードし、リファレンスデータをファイル名, 行番号とともに標準エラー出力へダンプします。

引数が文字列などの参照データでない場合も、リファレンスデータと同じ方法でダンプされます。

dn関数

リファレンスデータ内のすべての文字列をエンコードせず、リファレンスデータをファイル名, 行番号とともに標準エラー出力へダンプします。

引数が文字列などの参照データでない場合も、リファレンスデータと同じ方法でダンプされます。

バグレポート

https://github.com/YoshiyukiItoh/D

関連項目

元ページ(meta::cpan)

https://metacpan.org/pod/D

Perlゼミのすべての講座は
Perlゼミプログラミングスクール オンラインで確認できます。