Как мы можем создать пользовательские схемы тегов NSLinguisticTagger в iOS?

#ios #parsing #text-parsing #nslinguistictagger

#iOS #синтаксический анализ #синтаксический анализ текста #nslinguistictagger

Вопрос:

Я работаю с классом NSLinguisticTagger для фильтрации или поиска названия места, имени, названия организации, номера телефона, номера мобильного телефона, адреса, такого как домашний адрес, адрес офиса и т. Д., Используя строку строки.

Есть 3 варианта, такие как 1. NSLinguisticTagPlaceName 2. NSLinguisticTagOrganizationName 3. NSLinguisticTagPersonalName

Других вариантов для номера мобильного телефона, номера телефона, номера факса и т. Д,

Итак, мой вопрос в том, можем ли мы создать собственный пользовательский класс схемы тегов. Если ДА, то как мы можем реализовать этот класс в iOS.

Результат уже заданной опции не является хорошим. Как я могу улучшить его результат.

Спасибо.

Ответ №1:

NSLinguisticTagger используется для разделения слов и классификации их на более простые части предложения (глаголы, существительные, прилагательные, имена и т. Д.). Чтобы найти номера телефонов, адреса, даты и т. Д., Попробуйте посмотреть на NSDataDetector

 let message = "What did I do on October 4"
let types: NSTextCheckingResult.CheckingType = [NSTextCheckingResult.CheckingType.date]
let detector = try? NSDataDetector(types: types.rawValue)
    detector?.enumerateMatches(in: message, options: [], range: NSMakeRange(0, (message as NSString).length)) { (result, flags, _) in
    print(result)
}