Continue(s)

Twitter:@dn0t_ GitHub:@ogrew

Perl

sprintf関数で自由自在に数字や文字列のフォーマットを指定する

1234 -> 001234 みたいな数字のゼロ埋め作業をPerlで楽にやる方法。 下記のように書くと便利です。 my $hoge = 1234; my $fuga = sprintf("%06d", $hoge); print $fuga; # -> 001234 sprintf関数は指定した書式で文字列を作成することが出来ます。 応用して…

perlでHashの一部分をテストで確認したいときにsuperhashof便利やん。

use Test::More; use Test::Deep; my $user = { name => '齋藤飛鳥', age => 19, height => 158, blood_type => 'O', center => '裸足でSummer', }; is $user->{age}, 19; cmp_deeply $user, superhashof { name => '齋藤飛鳥', blood_type => 'O' }; done_t…

表紙ははずいが役に立つ ~良書紹介「雅なPerl」~

「初めてのPerl」の第7版が今年の1月に出ていたらしい。 初めてのPerl 第7版作者: Randal L. Schwartz,brian d foy,Tom Phoenix,近藤嘉雪,嶋田健志出版社/メーカー: オライリージャパン発売日: 2018/01/20メディア: 単行本(ソフトカバー)この商品を含むブ…

Test::Mock::Guard ~テスト用にお手軽にstub化~

今日も今日とて、これまでなんとなくで使ってたモジュールを再度見つめ直す回です。 github.com Test::Mock::Guardはテストで使えるモジュールとしてメジャーな模様。既存のクラス挙動を簡単にオーバーライドできる。 use strict; use warnings; use Test::M…

Acme::Keyakizaka46をリリースした。

TL;DR Acmeモジュール群の存在を知って、Acme::Keyakizaka46を作った。 公式サイトからメンバーの情報を引っ張ってくる適当なスクリプト(Python)を書いた。 Minilaを使ってCPANにAcmeモジュールを公開したら簡単すぎて肩透かしを食らった。 github.com 経緯 …

DBIx::QueryLog ~ 手軽にDBIの発行ログを確認する

はじめに これはDBIx::QueryLog モジュールの紹介記事です。 DBIx::QueryLog - search.cpan.org github.com

Data::Page ~ ページングの基本モジュールを見る

はじめに これはData::Page モジュールの紹介記事です。 http://perldoc.jp/docs/modules/Data-Page-1.01/Page.pod

Data::Validator ~ 多機能かつシンプルにサブルーチンの引数をバリデート ~

プライベートでもお仕事でもお世話になっています。 github.com 基本的にはHASH or HASH_REF の形での値の引き渡しができることは知ってるのだが、withを使った拡張によっていくつか応用が効くみたいであり、それをイマイチ把握してなかったので今回は適当な…

猫でもわかる?Perlモジュールのもろもろ確認術

「あれ?あのモジュールってインストールしてるんだっけ?」 perldoc -m モジュール名 とりあえず手っ取り早い。 「今、@INCって何が設定されてるんだっけ?」 perl -e 'print @INC'; ...っていうのをよく見るけど改行がなく見づらい。 perl -e 'use Data::D…

Perlで同じ内容のメソッドを別名で実行したいときのTip

Tipというか小手技。 まずあまり出番はないと思うが、 中身は同じ内容のメソッドだが呼び出し元の都合で別名で読んだ方が可読性が上がる、メンテナンスがやりやすい みたいな場合がごく稀にある(と思う)。 あるいは「その実装自体を見直した方が良いのでは…

PerlのHashでキーの存在確認、キーの値の存在確認

12月に入ってAdvent Calenderの記事を追うだけで 一日が終わってしまいそうな今日この頃。 ゲーム開発におけるマスターデータの管理方法に関する記事をちらほら目にします。 narazaka.blog109.fc2.com tech.drecom.co.jp (と思ったらどっちもドリコムさんの…

Perlで柔軟な配列処理ができるspliceを使ってみる。

perlのコードレビューでsplice関数が使われてて、 「配列をなんかいじるやつなんだろうけど使ったことないな〜」 となったので少し調べてみました。

use utf8;とはなんたるやを知る。

目的 use utf8; Perlで文字列を扱うときに書くこいつの意味をしっかりと理解したい。 まずは適当にググる。 Perlの文字列の扱い方・・其の壱 ちょっと古い記事だけど…。 なるほど、内部文字列と外部文字列でのutf8フラグ管理に使われるものなのか(?) …待…

PerlでHashのキーを上書きしたい。

あまり利用する機会は少ないがハッシュのキーをリネームさせたいときがたまにある。 特別複雑なことはしないが、さくっと書けなかったのでメモ。