2014-10-27 77 views
0

一個後續問題,我問了另一個問題(Parse String to get "date", "time" and "other", with Regexp):我現在有一個格式爲dd.mm.yyyy日期和開始時間和結束時間(在歐洲24小時量表)作爲我的Google腳本中的變量。我最終想要做的是在我的谷歌日曆中有這些日期的事件。我知道如何創建一個事件,但是我如何格式化我的日期&時間變量才能使其工作?我不知道這是否相關,但我住在中歐時區。谷歌日曆的谷歌腳本日期和時間的格式

非常感謝您提前。

最佳,菲爾

回答

0

一旦你有不同的值(小時,分鐘和日期)就變得相當容易建立與這些值的日期對象。

日曆事件需要2個完整日期對象,一個用於開始日期/時間和一個用於結束日期/時間。

代碼可能以不同的方式編寫,下面是一個逐步進行的示例,以幫助您更好地瞭解發生的情況。

function myFunction() { 
    var timeString = 'Event in Cologne 25.10.2014 18:30 - 23:00';// your data looks like this 
    var date = timeString.match(/([\d]+\.[\d]+\.[\d]+)/g).toString().split('.');// decompose in an array of dd,mm,yyyy 
    var time = timeString.match(/((([0-1]?[0-9])|([2][0-3])):)([0-5][0-9])/g);// this is start and end time 
    Logger.log('date='+date+' time='+time);// check the values in logger 
    var start = new Date(date[2],date[1]-1,date[0]);//create date object for start 
    start.setHours(time[0].split(':')[0]);//set hours 
    start.setMinutes(time[0].split(':')[1]);//set minutes 
    var end = new Date(date[2],date[1]-1,date[0]);//same for end 
    end.setHours(time[1].split(':')[0]); 
    end.setMinutes(time[1].split(':')[1]); 
    Logger.log('\nstart = '+start+'\nend = '+end);// check final result 
} 

登錄結果:

enter image description here

+0

哇,可以完美運行。非常感謝!!! – user1582830 2014-10-28 10:12:50