2017-01-12 47 views

回答

0
Regex rg = new Regex(@"[01]?\d[/-][0123]?\d[/-]\d{2}"); 
Match m = rg.Match("Sat, 02/04/1708:00 PM"); 
Console.Write(m.ToString()); 

WORKING FIDDLE

+0

@ user7392548檢查樣本 – Sajeetharan

1

可以使用Split()Substring()

var str = @"Sat, 02/04/1708:00 PM"; 
var res = str.Split(' ')[1].Substring(0, 8); 
+1

,這將給你'1708年2月4日:00 PM'不'2月4日/ 1708',他期待 –

+0

我需要17年2月4日 – user7392548

+0

@不幸的是,你是對的,更正 –

0

可以使用

string str="Sat, 02/04/1708:00 PM";

string newStr=str.Substring(5,8);

0
String str = @"Sat, 02/04/1708:00 PM"; 
String expected = str.split(' ')[1].Substring(0,8); 
0

你也可以這樣做:

string strInput = @"Sat, 02/04/1708:00 PM"; 
var dateResult = strInput.Split(' ', ',')[2]; 
0

這可能會爲你做的伎倆。

string smdt = "Sun, 02/04/1708:00 PM"; 
string format = "ddd, dd/MM/yyhh:mm tt"; 
DateTime dt = DateTime.ParseExact(smdt, format, CultureInfo.InvariantCulture, DateTimeStyles.None); 
string extractedDate = dt.ToString("dd/MM/yy"); 

與問題問題是日期02/04/17不是Saturday而是將Sunday,因此它無法轉換爲DateTime。當我改變Sat to SunextractedDate是你正在尋找的結果。

一個襯墊答案可能是

string smdt = "Sun, 02/04/1708:00 PM"; 
string extractedDate = DateTime.ParseExact(
               smdt, 
               "ddd, dd/MM/yyhh:mm tt", 
               CultureInfo.InvariantCulture, 
               DateTimeStyles.None 
              ).ToString("dd/MM/yy");