2013-02-28 166 views
2

提取日期我有以下日期字符串 - "2013-02-20T17:24:33Z"正则表达式从字符串

我想写一个正则表达式只提取日期部分"2013-02-20"。我怎么做?任何帮助将不胜感激。

感谢, 穆尔塔扎

回答

4

您可以为此使用捕获组。

/(\d{4}-\d{2}-\d{1,2}).*/ 

使用$1,你可以得到你想要的部分。

5

那么简单的方法是\d\d\d\d-\d\d-\d\d但你也可以使用量词,使它看起来更好\d{4}-\d{2}-\d{2}

3

只需搜索第一个T并使用子字符串。我假设你总是得到格式良好的日期字符串。

如果日期字符串不能保证有效,可以使用任何与日期相关的库来解析和验证输入(验证包括日历逻辑,正则表达式无法实现),并重新格式化输出。

没有示例代码,因为您没有提及该语言。

2

使用子

 string date = "2013-02-20T17:24:33Z"; 
     string h = date.Substring(0, 10);