0

JavaScript を使用して、次のような日付文字列を翻訳するにはどうすればよいですか。

Sep 13, 1:13PM GMT+01:00
Sep 12, 4:00PM EDT

エポックからの Unix タイムスタンプまたは JavaScript ミリ秒のいずれか?

フォーマットは次のとおりだと思います。

MMM DD, h:mmtt ?K
4

1 に答える 1

0

私はこれまでのところ、答えに近いものを持っています。

  • 文字列に対して正規表現を実行し、各要素をグループにキャプチャします
  • 時間の24時間表現が修正されます
  • 今年だと思います
  • タイムゾーンを考慮に入れていません
  • 解析メソッドの使用
function getTimestamp(str){
 var re = /(\w{3}) (\d{2}), (\d):(\d{2})(\w{2}) (.*)/;
  var match = re.exec(str);
  if (match !== null) {
      var HH = match[5]==='PM' ? +match[3]+12 : match[3];
      return Date.parse(match[1]+' '+match[2]+', '+new Date().getFullYear()+' '+ HH +':'+match[4]);
  }
}

getTimestamp('Sep 12, 4:00PM EDT'); //=> 1347462000000
于 2012-09-13T13:58:31.830 に答える