• ベストアンサー

日付の変換

「平成〇〇年〇月〇日」という形式を「20〇〇-〇-〇」というように変換したいのですが、どのように書くといいのでしょうか。もともとのテキスト書式が「平成…」になっています。 例えば、平成16年12月9日→2004-12-09 このようなことはできますでしょうか。 元号を西暦に変換することは、平成が終わったあとの場合を考えると使えないとは思うのですが、もし、元号→西暦が無理であれば、12月9日→12-09のように変換する方法を 教えていただきたいです。一桁の月や日にちのときに0を前につけるようにするにはどうしたらいいのでしょうか。 どうぞよろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

他にもやり方はあるかもしれんけど、とりあえず。 $heisei="平成16年12月9日"; $heisei =~ /^平成(\d+)年(\d+)月(\d+)日$/; $seireki = sprintf "%04d-%02d-%02d",1989-1+$1,$2,$3; print $seireki;

CAL5
質問者

お礼

BLUEPIXY様、回答ありがとうございます。 上記の教えていただいたやり方で、表示を確認することができました。 ありがとうございました~!

関連するQ&A