2016-02-18 72 views
0

我需要拆分一個代表日期的字符串。此日期以這種方式表示dd/mm/yyyydd-mm-yyyy如何拆分數據與[/ - ]

我的代碼是(當前字符串爲mm/dd/yyyy格式):

<input type="data" id="dat"> 
..... 
var dataString=$('#dat').val(); 
    dataString=dataString.split('/ -'); 
    //now I can try to print years so 
    console.log(dataString[2]); 

程序打印我的 「不確定」。任何人都可以幫助pe?

回答

0

試試這個,它對於f ORMAT。首先我用'/'替換' - ',以便我們得到相同格式的日期(dd/mm/yyyy)然後分割。

$(function(){ 
    var dataString=$('#dat').val(); 
    dataString=dataString.replace('-','/').split('/'); 
    alert(dataString[2]) 
    }) 
0

因爲你的陣列dataString的第一個指數是0

因此,代碼應該是:

dataString=dataString.split('/ -'); 
//now I can try to print years so 
console.log(dataString[1]); 

注意數組的索引是1,而不是2)

+0

注意,你不應該在 '/ - ' 分裂(我假設你想分割日期如01/02/2016或01-02-2016?那麼你應該根據你的日期格式分割' - '或'/'... –

0

我想你的拆分方法應該看起來像這樣:

dataString=dataString.split('/'); 

    <input type="data" id="dat"> 
..... 
var dataString=$('#dat').val(); 
    dataString=dataString.split('/ **-**'); - without this 
    //now I can try to print years so 
    console.log(dataString[2]); 
0

正確分割dd/mm/yyyydd-mm-yyyy是使用此正則表達式到分裂的方式:

.split(/\/|-/g)

  • /平均值,打開正則表達式表達
  • \/意思/炭分裂(轉義\用於不關閉表達式)。
  • |平均或
  • -通過-焦炭平均分割。
  • /意思是說,正則表達式的結尾
  • g是一個選項,用來分割所有這個char而不僅僅是第一個。

所以在你的榜樣:

var dataString = $('#dat').val(); // `dd/mm/yyyy` or `dd-mm-yyyy` 
    dataString = dataString.split(/\/|-/g); // [dd, mm, yyyy] 
console.log(dataString[2]); 

幾個日期的正則表達式的例:

alert("12-12-2012".split(/\/|-/g)); // [12, 12, 2012] 
 
alert("12/12/2012".split(/\/|-/g)); // [12, 12, 2012] 
 
alert("12-12/2012".split(/\/|-/g)); // [12, 12, 2012]