2014-03-28 62 views
2

我試圖用NSDataDetector來檢測字符串中的不同數據。我注意到,檢測日期時(即與resultType是NSTextCheckingTypeDate),有三個有效屬性:通過NSDataDetector檢測持續時間

  • 日期
  • 時間
  • 的timeZone

我能弄清楚如何創建爲日期和時區生成值的字符串,但我不確定哪個字符串會生成持續時間的值。

例如,當我嘗試解析12:15 UTC時,它填充日期和時間區域。我在想像10 minutes會產生一個持續時間的值,但它甚至不會產生匹配。

注意duration應根據NSHipsterApple工作。請注意0​​文檔中的文本檢查結果的日期和時間,其中提到了duration

回答

3

如果數據檢測器檢測到日期間隔,您將得到一個持續時間。例如以該字符串: 「從12月10日,在2〜12月12日1」

這個日誌記錄代碼:

NSLog(@"Match: %@ (duration %g)", result, result.duration); 

我得到:

Match: <NSDateCheckingResult: 0x7fc2da810830>{0, 45}{2014-12-10 13:00:00 +0000-2014-12-12 12:00:00 +0000} (duration 169200) 

(我在UTC + 1時區,這就是爲什麼小時在結果中被抵消的原因)