- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:漢字交じり文字列からのlocaltimeの求め方)
漢字交じり文字列からのlocaltimeの求め方
このQ&Aのポイント
- perlのCIGを改造してエラーチェック機能をつける方法を教えてください
- フォームから送られてくる文字列から数字部分だけ抜き出してlocaltimeに変換する方法を教えてください
- timelocalの式に代入するとinternal server errorになってしまう問題を解決する方法を教えてください
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
Unix Time を求めたいわけですね。 ということはlocaltimeは使えません。 Time:Localモジュールを使用することで簡単に求められます。 なお、localtimeで日時を求めたときは月を+1、年を+1900する必要がありますが、逆にUnix Timeを求めたい時はその逆をしてから代入しなければなりません。 $time = '2004年5月16日登録'; use Time::Local; $time =~ /^(\d{4})年(\d{1,2})月(\d{1,2})日.*$/; $unixtime = &timelocal(0,0,0,$3,$2-1,$1-1900); これで変数unixtimeにUnix Timeが入ります。 なお、ここでは時と分と秒はどれも0として(0時0分0秒)います。
お礼
早々のお返事をどうもありがとうございました! おかげさまでうまく行きました!! 「え?うそ!」と言ってしまったくらいです。もっと大変な事になるんだと思っていました。 $time = ̄ /^(\d{4})年(\d{1,2})月(\d{1,2})日.*$/; という分割の仕方も初めて知り、大変参考になりました。 この度はどうもありがとうございました!!