如何将日期(不知道种类)转换为字符串

Jes*_*ica 5 string nsdate nsdateformatter ios swift

我有一个arrayNSDate,我试图将转换为一个对象string.我改变他们的方式是NSDateFormat,但是,如果有另一种更好的方式,我会很高兴听到.

最多的东西date是:

Days-Hours-Minutes-Seconds-Milliseconds
Run Code Online (Sandbox Code Playgroud)

但有些人会少一些,比如:

Minutes-Seconds-Milliseconds
Run Code Online (Sandbox Code Playgroud)

甚至更少.现在我将把它们转换成一个string.我是否必须创建if statements以确定它是否有天,小时等,或者是否有更简单的方法来执行此操作?

zap*_*aph 1

使用示例NSDataDetector(Swift 2.0):

let textDate = "dan's march 31, 1975 12:34 pm";

do {
    let dd = try NSDataDetector(types: NSTextCheckingType.Date.rawValue)
    if let tcr :NSTextCheckingResult = dd.firstMatchInString(textDate, options:[], range:NSMakeRange(0, textDate.utf16.count)),
       let date = tcr.date {
            print("date: \(date)")
        }
}
catch {
    print("Data Detector error!")
}
Run Code Online (Sandbox Code Playgroud)

输出:

日期: 1975-03-31 16:34:00 +0000