我可以選擇使用JavaScript或c#來完成此任務。如何從JavaScript或c#中的日期/時間字符串中刪除秒鐘?
我有很多字符串,格式爲「2012年10月14日8:45:34」 如何刪除秒並保留PM,如下所示「2012年10月14日8:45 PM」?
我不能使用子字符串,因爲字符串的長度會隨着每一天和每個時間而不同。
我可以選擇使用JavaScript或c#來完成此任務。如何從JavaScript或c#中的日期/時間字符串中刪除秒鐘?
我有很多字符串,格式爲「2012年10月14日8:45:34」 如何刪除秒並保留PM,如下所示「2012年10月14日8:45 PM」?
我不能使用子字符串,因爲字符串的長度會隨着每一天和每個時間而不同。
在C#中,可以這樣做:
myTime.ToString("MM/dd/yyyy hh:mmtt");
或者,你可以使用Format Specifiers
描述here內置
編輯 - 我刪除mm
和之間的空間。,因爲我剛剛注意到你的帖子顯示8:45PM
。如果您希望它是8:45 PM
,您可以在mm
和tt
之間添加一個空格。
好了,你可以嘗試:
var string="10/14/2012 8:45:34 PM";
var resultArray = string.split(":");
var result = string.replace(resultArray[2],"");
應該在JavaScript中有效地工作。在一秒鐘內不好測試它,並更新它。
UPDATE:
var string="10/14/2012 8:45:34 PM";
var resultArray = string.split(":");
var result = string.replace(":"+resultArray[2]," ")+resultArray[2].split(" ")[1];
一點點令人討厭。但它工作得很好:http://jsfiddle.net/x8uUW/
UPDATE使用正則表達式(我用一個正則表達式生成器,所以它並不像緊湊,因爲它可以通過任何手段,但它的工作:http://jsfiddle.net/x8uUW/1/
這留下了AM/PM –
權。呃,它得到了混亂... – bengreenier
也許你可以使用正則表達式來替換最後:NN與空白。但我認爲它總是更好地處理這些來源,而不是黑客入侵。 –
如果該字符串格式一致,那麼:
var s = '10/14/2012 8:45:34 PM';
s = s.replace(/:\d+ (\w\w)$/, '$1'); // 10/14/2012 8:45PM
我希望,只是要通過非常有限的觀衆使用,因爲這種格式將被絕大多數人被誤解。一個更廣泛的理解和更少明確的格式是:
2012-10-14 8:45PM
您可以使用正則表達式。
C#:
string d = "10/14/2012 8:45:34 PM";
d = Regex.Replace(d, @":\d\d ", String.Empty);
的Javascript:
var d = "10/14/2012 8:45:34 PM";
d = d.replace(/:\d\d /, '');
我試過Axure使用JavaScript ToString()
設置控件的文本,但失敗了,正則表達式在Axure是不可能的(至少,當時我發佈了這個),所以我想出了另一個簡單的替代方法,但效率不高的方法:
aDate.toLocaleTimeString().replace(':'+aDate.getSeconds(),'')
Date.prototype.toShortTimeNoSeconds = function(){ return this.toLocaleTimeString()。replace(':'+ this.getSeconds(),''); } //用法:new Date()。toShortTimeNoSeconds(); – Alexander
您可以使用正則表達式進行字符串操作,並且非常容易。
var mydate = "10/14/2012 8:45:34 PM";
var formated_date = mydate.replace(/(\d{1,2})\/(\d{1,2})\/(\d{4})\ (\d{1,2}):(\d{1,2}):(\d{1,2})\ (.*)/, "$1/$2/$3\ $4:$5$7");
document.write(formated_date);
如果這些字符串起源於一個日期,這將是最好的方式來做到這一點。此外,您可以使用DateTime.TryParseExact:http://www.dotnetperls.com/datetime-tryparse解析它,然後使用ToString將其放回到字符串中。 –