dateFromString restituisce nil per alcuni valori

Sto diventando nil per alcuni valori mentre uso dateFromString in swift . Ho cercato molto ma invano.

Di seguito è riportato il mio codice:

 let strDate = self.sortedDict.valueForKey("TIME").objectAtIndex(indexPath.row).objectAtIndex(0) as? String print(strDate); let st_date = frmt.dateFromString(strDate!) let frmt1:NSDateFormatter = NSDateFormatter() frmt1.locale = NSLocale(localeIdentifier: localeStr) frmt1.dateFormat = "MMM, dd yyyy hh:mm a" if st_date != nil { print(st_date) } 

Console di uscita:

  Optional("September, 20 2015 10:00:00") Optional(2015-09-20 10:00:00 +0000) Optional("October, 04 2015 10:00:00") Optional(2015-10-04 10:00:00 +0000) Optional("October, 04 2015 14:00:00") // nil Optional("October, 18 2015 15:00:00") // nil Optional("September, 20 2015 14:00:00") // nil Optional("September, 27 2015 10:00:00") Optional(2015-09-27 10:00:00 +0000) Optional("September, 27 2015 12:00:00") Optional(2015-09-27 00:00:00 +0000) Optional("September, 27 2015 14:00:00") Optional("October, 03 2015 14:00:00") //nil Optional("October, 03 2015 16:00:00") //nil 

Il formato è lo stesso per tutte le stringhe di data, tuttavia ottengo zero per pochi valori. Perchè così? Per favore aiuto. Dove mi sto sbagliando?

il formato dovrebbe essere HH per 24 ore anche se si ottengono valori solo per 12 ore.

 frmt1.dateFormat = "MMM, dd yyyy HH:mm a"