下記サイトのように、DateFormatterで、String(input) -> Date -> String(output) と変換します。
下記ソースコードの★にインプットするStringのフォーマットを
☆にアウトプットするStringのフォーマットを指定します。
iOS Swift 3 : Convert “yyyy-MM-dd'T'HH:mm:ssZ” format string to date object
let string = "2017-01-27T18:36:36Z"
let dateFormatter = DateFormatter()
let tempLocale = dateFormatter.locale // save locale temporarily
dateFormatter.locale = Locale(identifier: "en_US_POSIX") // set locale to reliable US_POSIX
dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZ"★
let date: Date = dateFormatter.date(from: string)!
dateFormatter.dateFormat = "dd-MM-yyyy HH:mm:ss"☆
dateFormatter.locale = tempLocale // reset the locale
let dateString: String = dateFormatter.string(from: date)
print("EXACT_DATE : (dateString)")
また、「今日」「昨日」の様に変更したい場合、
以下の様に、DateComponentsのfromにDateを指定すると、月や日付がIntで取得できますので、
2つのDateの月日を求め、比較して、目的の文字列を作成してください。
let currentComponent = Calendar.current.dateComponents(in: TimeZone.current, from: Date())
let currentYear: Int = currentComponent.year!
let currentMonth: Int = currentComponent.month!
let currentDay: Int = currentComponent.day!