什么是检查日期格式的好方法,我希望格式为2011-12-08 16:59:18我有提升会使用正则表达式是最好的方法或是否有一些C ++方式来做它。提前致谢。这里有一些测试条件,但不限于这些。
所以例如某人进入
2011-2-08 16:59:18 //incorrect date month needs to have 2 digits 02
2011-02-08 16:9:18 //incorrect minuets needs to have 2 digits 09
2011-02-0X 16:09:18 //incorect alpha character for day no alpha except - and :
2011-12-08 16:59:18 // correct
答案 0 :(得分:5)
正则表达式可以工作,或者您可以只是遍历字符串并测试每个字符以确保它符合您的预期。你可能会花更少的时间来做后者。
答案 1 :(得分:2)
您可以使用 strptime 将日期从字符串格式转换为tm结构。
您也可以使用 Boost Date Time Input/Output