我有像「33分鐘」和「2小時20分鐘」,例如字符串,我希望他們簡稱爲「33米」和「2h20m」。我怎麼只保留字的第一個字母(縮寫),並在字符串中的所有數字?
到目前爲止,我有這個(基於堆棧交換一個類似的問題):https://jsfiddle.net/3tzrs7we/
var str1 = "33 minutes";
var str2 = "2 hours 20 minutes";
var str3 = str1.replace(/(\w)\w*\W*/g, function(_, i) {
return i.toUpperCase();
})
var str4 = str2.replace(/(\w)\w*\W*/g, function(_, i) {
return i.toUpperCase();
})
alert(str3 + ", " + str4);
但返回 「3M」 和 「2H2M。」
(這只是一個例子,在我的代碼,它看起來像${r.time.replace(/(\w)\w*\W*/g, function (_, i) {return i.toUpperCase();})}
)
如果你不想轉換爲大寫剛落'.toUpperCase()'部分:https://jsfiddle.net/3tzrs7we/1/ – pawel