iPhone:如何将正则表达式转换为日期格式?

Nik*_*dav 2 iphone

你好朋友,

我有一个像" / Date(1312628727617 + 0000)/ " 的字符串,这个正则表达式在iPhone中转换为日期格式,所以请提供任何链接或任何想法来开发此功能.

提前致谢.

Par*_*att 6

使用以下方法并将正则表达式日期/日期(1312628727617 + 0000)/作为参数传递.

- (NSDate*) getDateFromJSON:(NSString *)dateString
{
    // Expect date in this format "/Date(1268123281843)/"
    int startPos = [dateString rangeOfString:@"("].location+1;
    int endPos = [dateString rangeOfString:@")"].location;
    NSRange range = NSMakeRange(startPos,endPos-startPos);
    unsigned long long milliseconds = [[dateString substringWithRange:range] longLongValue];
    NSLog(@"%llu",milliseconds);
    NSTimeInterval interval = milliseconds/1000;
    return [NSDate dateWithTimeIntervalSince1970:interval];
}
Run Code Online (Sandbox Code Playgroud)

编辑:

  NSDateFormatter *dateForm = [[NSDateFormatter alloc] init];
  [dateForm setDateFormat:@"yyyy-MM-dd hh:mm:ss"];
  NSString *dateStr = [dateForm stringFromDate:<YourNSDateObject>];
  [dateForm setDateFormat:@"<Your Desired Date Format>"];
  NSDate *desireddate = [dateForm dateFromString:dateStr];
Run Code Online (Sandbox Code Playgroud)

希望这对你有所帮助.