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)し、文字列を返します
my $str = dustr $data;
 
# リファレンスデータをエンコード(cp932)し、文字列を返します
my $str = dwstr $data;
 
# リファレンスデータをエンコードせずに文字列を返します
my $str = dnstr $data;

# dustr関数の結果を標準エラー出力へダンプします
du $data;
 
# dwstr関数の結果を標準エラー出力へダンプします
dw $data;
 
# dnstr関数の結果を標準エラー出力へダンプします
dn $data;

特徴

  • du, dw, dn, dustr, dwstr, dnstr関数をエクスポートします。これらの関数名は、2文字のため'p' などのデバックコマンドと競合しないでください。
  • dustr, dwstr関数はリファレンスデータの全ての文字列をエンコードします。
  • 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, dustr, dwstr, dnstr関数をエクスポートします。

関数

dustr関数

リファレンスデータ内のすべての文字列をUTF-8にエンコードし、リファレンスデータをファイル名, 行番号とともに文字列を返却します。

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

du関数

dustr関数の結果を標準エラー出力へダンプします。

dwstr関数

リファレンスデータ内のすべての文字列をCP932にエンコードし、リファレンスデータをファイル名, 行番号とともに文字列を返却します。

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

dw関数

dwstr関数の結果を標準エラー出力へダンプします。

dnstr関数

リファレンスデータ内のすべての文字列をエンコードせず、リファレンスデータをファイル名, 行番号とともに文字列を返却します。

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

dn関数

dwstr関数の結果を標準エラー出力へダンプします。

バグレポート

https://github.com/YoshiyukiItoh/D

関連項目

元ページ(meta::cpan)

https://metacpan.org/pod/D

Perlの入門書
  • 初めてのPerl 第7版

    Perl入門 定番の一冊
  • 業務に役立つPerl

    ログ解析など日本語を含むテキスト処理の実践!
Twitter
Perlゼミの情報が役立ったら、フォロー、いいね、リツートで応援。