Perlコーディング初心者質問スレ Part 57at PHPPerlコーディング初心者質問スレ Part 57 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト84:nobodyさん 08/03/11 00:00:51 kt3GGsX4 XMLが自由すぎて使いづらいのが難点よねw 85:nobodyさん 08/03/11 00:17:08 安易に拡張性を求めたら墓穴を掘るいい例だよね 自由にできるのは結構なことだけど,良く使う日時のフォーマットくらい統一してほしいぜ・・・ 86:nobodyさん 08/03/11 00:31:27 >>83 Time::Local (の timelocal) は組込関数ではないが標準モジュール。 故意に抜かない限り入っている。 87:nobodyさん 08/03/11 00:55:54 フォーマットを統一するものを書いてみました。無駄があったらご指摘お願いします。 #!/usr/local/bin/perl sub DateFmt{ my $str=$_[0]; my $i,$temp,$num; if($str =~ /[0-9]{4}?(-[0-9]{2}?){2}?T[0-9]{2}?:[0-9]{2}?:[0-9]{2}?\+[0-9]{2}?:[0-9]{2}?/){ return $str; } $str =~ s/^[a-zA-Z]{3}?\,//; $str =~ s/^\ +//g; @mname = ('Jun','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'); $i=1; foreach $temp (@mname){ $num=sprintf("%02d",$i); $str =~ s/$temp/$num/i; $i++; } ($day,$month,$year,$hms,$jst) = split(/ /,$str); $jst =~ s/\+(..)(..)/+$1:$2/; return "$year-$month-${day}T$hms$jst"; } print &DateFmt("Mon, 10 Mar 2008 19:17:02 +0900"); print "\n"; print &DateFmt("Mon,10 Mar 2008 11:02:29 +0900"); print "\n"; print &DateFmt("2008-03-10T21:56:00+09:00"); print "\n"; 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch