Обнаружение дат на iOS: как найти и обработать даты на iOS?

Прежде всего, платформа, над которой я работаю: Swift 3 + iOS 10.3.

Что я пытаюсь сделать:

  • Пользователь пытается ввести некоторый текст в текстовом представлении, которое включает время в некотором UITextView. Например: "Встреча в 10 вечера сегодня".
  • Теперь, когда у меня есть текст, я хочу выбрать дату события, которая называется "10 вечера сегодня".
  • Я хочу преобразовать эту информацию в Date() объект.

Что я знаю и пробовал до сих пор:

  • NSDataDetectors: они очень полезны для извлечения этой информации из строк, но, как вы можете видеть здесь, пользователь может вводить даты в различных форматах, что делает невозможным охват всех форматов дат для NSDateFormatter(),
  • UITextViews: в них встроено обнаружение данных, но это в первую очередь для нередактируемого текста и оптимально для взаимодействия с пользователем непосредственно в пользовательском интерфейсе. Мне просто нужно извлечь эту информацию.

Что это уже?MacOS. Если вы использовали Напоминания или Календарь в macOS, ввод напоминаний / событий прост: в календаре добавление события "Встреча в 22:00" создает событие, называемое " Встреча запланированное в 10:00", а не просто конвертирует весь текст и создает событие. называется "Встреча в 10 вечера".

Поэтому мне интересно, как я могу использовать вышеупомянутую возможность на iOS, которая кажется встроенной в MacOS? Похоже, что нет никаких сообщений или учебных пособий по этой конкретной возможности (по крайней мере, я не мог найти какие-либо). Если для этого нет API, я был бы признателен, если бы кто-нибудь мог предложить альтернативу для обработки дат из текста, чтобы я мог выполнить вышеизложенное.

0 ответов

Другие вопросы по тегам