如何检查字符串是日期 [重复]
Posted
技术标签:
【中文标题】如何检查字符串是日期 [重复]【英文标题】:How to check the string is a Date [duplicate] 【发布时间】:2012-09-15 14:33:32 【问题描述】:我需要根据所有可能的日期格式检查字符串,并且需要检查其有效日期。
我面临的问题是我无法预测日期格式是从其他一些网络来源获得的。一个例子是September 21 2012 1255 PM ET
,.但格式可能会有所不同。
【问题讨论】:
请求专用 API。比屏幕抓取好得多。 【参考方案1】:我建议您实现自己的 Parse 方法并使用正则表达式来确定应该如何解析字符串。您不应该期望在不知道它是哪种格式的情况下解析具有任何格式的日期。
我个人会实现这样的东西(但话说回来,我已经有一段时间没有编写 Java 代码了):
public SimpleDateFormat ParseDate(string s)
SimpleDateFormat parsedDate;
if(s.matches("0?[1-9]|[12][0-9]|3[01])/(0?[1-9]|1[012])/((19|20)\\d\\d"))
parsedDate = new SimpleDateFormat("MM/dd/yyyy");
else if(s.matches([PATTERN2]))
parsedDate = new SimpleDateFormat([DATE PATTERN 2]);
...
return parsedDate;
等等……
推荐阅读:
http://docs.oracle.com/javase/tutorial/essential/regex/http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html
【讨论】:
以上是关于如何检查字符串是日期 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
使用 push() 方法和 indexOf() 方法从 AngularJS1 中的数组中删除/检查重复的日期