blog.鶯梭庵

二〇〇四年 葉月 廿九日 日曜日

日付を漢字表示にするには [/this_blog/blosxom]

まず、以下のような連想配列を用意する。


%day2ja = ( Mon=>'月', Tue=>'火', Wed=>'水', Thu=>'木', Fri=>'金', Sat=>'土', Sun=>'日' );

%month2ja = ( Jan=>'睦月', Feb=>'如月', Mar=>'弥生', Apr=>'卯月', May=>'皐月', Jun=>'水無月', Jul=>'文月', Aug=>'葉月', Sep=>'長月', Oct=>'神無月', Nov=>'霜月', Dec=>'師走' );

%num2ja = ( 0=>'〇', 1=>'一', 2=>'二', 3=>'三', 4=>'四', 5=>'五', 6=>'六', 7=>'七', 8=>'八', 9=>'九' );


次に、nice_date サブルーチンを以下のように変更。


my($unixtime) = @_;

my $c_time = ctime($unixtime);

my($dw,$mo,$d1,$d2,$y1,$y2,$y3,$y4) = ( $c_time =~ /(\w{3}) +(\w{3}) +(\d?)(\d) +\d{2}:\d{2}:\d{2} +(\d)(\d)(\d)(\d)$/ );

$dw = $day2ja{$dw} . '曜日';

$mo = $month2ja{$mo};

my $da = '';

if ( $d1 eq 1 ) { $da .= '十'; }

elsif ( $d1 eq 2 ) { $da .= '廿'; }

elsif ( $d1 eq 3 ) { $da .= '卅'; }

$da .= $num2ja{$d2} unless $d2 eq 0;

$da .= '日';

my $yr = $num2ja{$y1} . $num2ja{$y2} . $num2ja{$y3} . $num2ja{$y4} . '年';

return ($dw,$mo,$da,$yr);


私は perl 初心者なので、もっといいやり方があるかもしれない。本当はプラグインにすればいいのだろうけれど、自分が使えるようにするので精いっぱい。それでもコピーして使いたいという奇特な人は、ご自由に使ってください。


関連記事:

日付を漢字表示にする [/this_blog/perl]

[この記事にコメントを書く。] [このカテゴリをまとめて読む。] [最新の記事を読む。]

RSS feed

カテゴリ

[/language] (67)
[/links] (167)
[/mac] (93)
[/music] (37)
[/origami] (311)
[/this_blog/ajax] (7)
[/this_blog/blosxom] (5)
[/this_blog/history] (16)
[/this_blog/perl] (9)

最新記事

地球温暖化の嘘 [/links]
スティーブ・ライヒ『ディファレント・トレインズ』『エレクトリック・カウンターポイント』 [/music]
PlayStation 3 に折り紙ゲーム [/origami]
カンマにご用心 [/language]
Paper: Tear, Fold, Rip, Crease, Cut [/origami]
コンポージアム2009「武満徹作曲賞本選演奏会」@ 東京オペラシティコンサートホール [/music]
MFPP コンベンション・フォトレポート [/origami]
ジャン=ジェローム・カサロンガさんの Minimal Origami [/origami]
最小公分母 [/language]
折り紙の作図再考・その4 [/origami]
折り紙の作図再考・その3 [/origami]
折り紙の作図再考・その2 [/origami]
折り紙の作図再考・その1 [/origami]
クリス・パルマーさんの影織り [/origami]
USB ヘッドホンを買った [/mac]

毎日見るサイト

-> Slashdot
-> Boing Boing
-> ITmedia
-> デイリーポータルZ
-> 新しもの好きのダウンロ〜ド
-> MACお宝鑑定団
-> MLB(日本語)
-> NFL(日本語)
-> GetUpEnglish

毎日聞くラジオ

-> WNYC2
-> BBC Radio 3
-> NHK FM

製作に関わっているサイト

-> 折紙探偵団
-> TidBITS 日本語版
-> 日本 HP

羽鳥 公士郎