我有這個字符串:如何從字符串中刪除子字符串?
27/06/2016
或:
15/10/2005
我需要轉換上面的字符串到這一點:
27/06/16
或
15/10/05
如何CA ñ我在Javascript中實現它?
我有這個字符串:如何從字符串中刪除子字符串?
27/06/2016
或:
15/10/2005
我需要轉換上面的字符串到這一點:
27/06/16
或
15/10/05
如何CA ñ我在Javascript中實現它?
您可以使用簡單的字符串操作方法:
function shortDate(str)
{
return str.substring(0, 6) + str.substring(8, 10);
}
var dt = shortDate('27/06/2016');
// returns 27/06/16
當出現這種情況時,我已經輸入了近乎完全相同的解決方案了! – CompanyDroneFromSector7G
當然,非常感謝兄弟)) –
如果您是確保日期是有效的,你可以使用此功能
function formatDate (input) {
var datePart = input.match(/\d+/g);
year = datePart[2].substring(2); // get only two digits
month = datePart[1];
day = datePart[0];
return day+'/'+month+'/'+year;
}
您可以按照此過程。
Old_date = '27/06/2016';
New_date = Old_date.split('/');
New_date[2] = New_date[2].substring(2);
New_date = New_date.join('/');
Moment.js是使用日期操控最好的圖書館,它這樣做很容易:
moment('15/10/2005', 'DD/MM/YYYY').format('DD/MM/YY');
這是非常好的,當你需要時間操縱經常,並沒有太多的js文件,因爲增加額外的20kb負載到你的頁面是有點沉重的事情。歡呼聲 –
仍然這是美麗的解決方案 –
function reformat(dateStr)
{
dArr = dateStr.split("/");
return dArr[0]+ "/" +dArr[1]+ "/" +dArr[2].substring(2);
}
考慮添加一些評論給你的答案。 – HDJEMAI
如果你想在真正的日期,而不是字符串的工作:
function parseDate(input) {
var parts = input.match(/(\d+)/g);
return new Date(parts[2], parts[1], parts[0]);
}
function formatDate(date) {
var day = date.getDate();
var month = date.getMonth();
var year = date.getFullYear().toString().substr(2);
return day + '/' + month + '/' + year;
}
然後簡單地:
formatDate(parseDate('27/05/2016')); // returns "27/5/16"
這是行不通的,因爲(a)JS日期使用基於零的月份,以及(b)OP需要兩位數的日期和月份。 (你也應該檢查'.substr()'的參數是如何工作的。) – nnnnnn
如果您確定輸入始終處於正是格式,那麼你可以用一個簡單的基於正則表達式的字符串做在同一行替換:
var output = input.replace(/..(..)$/,"$1");
當然,你可以使正則表達式更具體與\d
爲數字,但如果你知道輸入格式是固定的.
再次工作正常做一個通用的「從任何字符串中刪除第三和第四個字符」。
使用正則表達式
/(?!.*\/)../
str.replace(/(?!.*\/)../,'')
http://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_substring –