对于NSDate的dateWithTimeIntervalSinceNow方法中的否定时间间隔(NSTimeInterval),可以使用以下代码来获取:
let now = Date()
let sinceNow = -10000
let then = Date(timeIntervalSinceNow: TimeInterval(sinceNow))
其中,now
表示当前时间,sinceNow
表示距离当前时间10000秒之前的时间,then
表示计算出的时间。
接下来,可以将then
转换为字符串,然后使用正则表达式来提取时间部分,最后将时间部分转换为NSTimeInterval类型即可。以下是一个示例代码:
let now = Date()
let sinceNow = -10000
let then = Date(timeIntervalSinceNow: TimeInterval(sinceNow))
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
let thenString = dateFormatter.string(from: then)
let negativeIntervalPattern = "\d+\.\d+\s+(-+\d+:\d+:\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s+(-+\d+)\s
领取专属 10元无门槛券
手把手带您无忧上云