NSLinguisticTagger
Оператор импорта
Swift
import Foundation
Objective C
@import Foundation;
Доступность
Доступный в iOS 5.0 и позже.
NSLinguisticTagger
класс используется, чтобы автоматически сегментировать текст естественного языка и тегировать его с информацией, такой как части речи. Это может также тегировать языки, сценарии, формы основы слов, и т.д. Экземпляр этого класса присваивается строка для тегирования, и клиенты могут тогда получить теги и диапазоны для маркеров в той строке, надлежащей данной схеме тега.
Потокобезопасность
Приведенный пример NSLinguisticTagger
не должен использоваться больше чем от одного потока одновременно.
-
init (tagSchemes:options:) - initWithTagSchemes:options:
Определяемый инициализаторСоздает лингвистический экземпляр теггера с помощью указанных схем тега и опций.
Объявление
Swift
init(tagSchemes
tagSchemes
: [AnyObject], optionsopts
: Int)Objective C
- (instancetype)initWithTagSchemes:(NSArray *)
tagSchemes
options:(NSUInteger)opts
Параметры
tagSchemes
Массив схем тега. См. Лингвистические Схемы Тега возможных значений.
opts
Лингвистические опции теггера использовать. Посмотрите NSLinguisticTaggerOptions для констант. Эти константы могут быть объединены с помощью оператора C-битового-«ИЛИ».
Возвращаемое значение
Инициализированный лингвистический теггер.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в iOS 5.0 и позже.
-
tagSchemes
СвойствоСхемы тега сконфигурированы для этого лингвистического теггера. (только для чтения)
Объявление
Swift
var tagSchemes: [AnyObject] { get }
Objective C
@property(readonly, copy) NSArray *tagSchemes
Обсуждение
См. Лингвистические Схемы Тега возможных значений.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в iOS 5.0 и позже.
-
Возвращает схемы тега, поддерживаемые лингвистическим теггером для определенного языка.
Объявление
Swift
class func availableTagSchemesForLanguage(_
language
: String) -> [AnyObject]Параметры
language
Стандартное сокращение как с
NSOrthography
.Возвращаемое значение
Массив Лингвистических Схем Тега.
Обсуждение
Клиенты, желающие знать схемы тега, поддерживаемые для a
NSLinguisticTagger
экземпляр для определенного языка может запросить их с этим методом. Язык должен быть указан с помощью стандартного сокращения в качестве с NSOrthography.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в iOS 5.0 и позже.
-
string
Свойство -
Уведомляет лингвистический теггер, что строка (если непостоянный) изменилась, как указано параметрами.
Объявление
Параметры
newCharRange
Диапазон в отредактированной заключительной строке.
delta
Изменение в длине.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в iOS 5.0 и позже.
См. также
-
Устанавливает орфографию для указанного диапазона.
Объявление
Swift
func setOrthography(_
orthography
: NSOrthography?, rangecharRange
: NSRange)Objective C
- (void)setOrthography:(NSOrthography *)
orthography
range:(NSRange)charRange
Параметры
orthography
Орфография.
charRange
Диапазон.
Обсуждение
Если орфография лингвистического теггера не будет установлена, то это определит его автоматически от содержания текста. Клиенты должны вызвать этот метод, только если они уже знают язык текста некоторыми другими средними значениями.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в iOS 5.0 и позже.
См. также
-
Возвращает орфографию в индексе и также возвращает диапазон измерений.
Объявление
Swift
func orthographyAtIndex(_
charIndex
: Int, effectiveRangeeffectiveRange
: NSRangePointer) -> NSOrthography?Objective C
- (NSOrthography *)orthographyAtIndex:(NSUInteger)
charIndex
effectiveRange:(NSRangePointer)effectiveRange
Параметры
charIndex
Индекс символа для начала исследования.
effectiveRange
NSRangePointer, что, после завершения, содержит диапазон орфографии, содержащей
charIndex
.Возвращаемое значение
Орфография для расположения.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в iOS 5.0 и позже.
См. также
-
enumerateTagsInRange (_: scheme:options:usingBlock:) - enumerateTagsInRange:scheme:options:usingBlock:
Перечисляет определенный диапазон строки, предоставляя Блоку расположенные теги.
Объявление
Параметры
range
Диапазон для анализа
tagScheme
Схема тега.
opts
Лингвистические опции теггера использовать. Посмотрите NSLinguisticTaggerOptions для констант. Эти константы могут быть объединены с помощью Побитового оператора C.
block
Блок для применения к диапазонам строки.
Блок берет четыре параметра:
tag
Расположенный лингвистический тег.
tokenRange
Диапазон лингвистического тега.
sentenceRange
Диапазон предложения, в котором происходит тег.
stop
Ссылка на булево значение. Блок может установить значение в
YES
true
остановить последующую обработку набора.stop
параметром является единственный параметр. Необходимо только когда-либо устанавливать эту булевскую переменную вYES
true
в Блоке.Обсуждение
Теггер сегментирует строку по мере необходимости на предложения и маркеры, и возвратит те диапазоны вместе с тегом для любой схемы в ее массиве схем тега.
Это - фундаментальный метод тегирования
NSLinguisticTagger
. Блок этого метода выполняет итерации по всем маркерам, пересекающим данный диапазон, предоставляя теги и диапазоны. Существует несколько дополнительных удобных методов, для получения диапазона предложения, информации о единственном маркере или информации обо всех маркерах, пересекающих данный диапазон сразу.Например, если схема тега
NSLinguisticTagSchemeLexicalClass
, теги укажут часть речи (для словоупотреблений) или тип пробела или пунктуации (для пробела или маркеров пунктуации). Если схема тегаNSLinguisticTagSchemeLemma
, теги укажут форму основы слова (если известный) для каждого словоупотребления.Важно отметить, что этот метод возвратит диапазоны всех маркеров, пересекающих данный диапазон.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в iOS 5.0 и позже.
-
possibleTagsAtIndex (_: scheme:tokenRange:sentenceRange:scores:) - possibleTagsAtIndex:scheme:tokenRange:sentenceRange:scores:
Возвращает массив возможных тегов для данной схемы в указанном диапазоне, предоставляя соответствие очков.
Объявление
Swift
func possibleTagsAtIndex(_
charIndex
: Int, schemetagScheme
: String, tokenRangetokenRange
: NSRangePointer, sentenceRangesentenceRange
: NSRangePointer, scoresscores
: AutoreleasingUnsafeMutablePointer<NSArray?>) -> [AnyObject]?Objective C
- (NSArray *)possibleTagsAtIndex:(NSUInteger)
charIndex
scheme:(NSString *)tagScheme
tokenRange:(NSRangePointer)tokenRange
sentenceRange:(NSRangePointer)sentenceRange
scores:(NSArray **)scores
Параметры
charIndex
Индекс начального символа.
tagScheme
Схема тега. См. Лингвистические Схемы Тега возможных значений.
tokenRange
Маркерный диапазон.
sentenceRange
Диапазон предложения.
scores
Возвраты ссылкой массив числовых очков (обернутый как объекты NSValue) указание вероятности, что диапазон соответствует схему тега.
Возвращаемое значение
Возвращает массив возможных тегов для
tagScheme
в указанном расположении, начиная с наиболее вероятной схемы тега. Для некоторых схем тега будет возвращен только единственный тег, но для других будет предоставлен список возможностей.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в iOS 5.0 и позже.
-
Возвращает тег для единственной схемы в указанном индексе.
Объявление
Swift
func tagAtIndex(_
charIndex
: Int, schemetagScheme
: String, tokenRangetokenRange
: NSRangePointer, sentenceRangesentenceRange
: NSRangePointer) -> String?Objective C
- (NSString *)tagAtIndex:(NSUInteger)
charIndex
scheme:(NSString *)tagScheme
tokenRange:(NSRangePointer)tokenRange
sentenceRange:(NSRangePointer)sentenceRange
Параметры
charIndex
Индекс начального символа.
tagScheme
Схема тега. См. Лингвистические Схемы Тега возможных значений.
tokenRange
Указатель на маркерный диапазон. Если
NULL
, никакой диапазон указателя не возвращается.sentenceRange
Указатель на диапазон предложения. Если
NULL
, никакой диапазон указателя не возвращается.Возвращаемое значение
Возвращает тег для требуемого
tagScheme
. Существуют случаи, в которых может не быть тега для данной схемы и маркера, когда возвращаемое значение метода было быnil
.Обсуждение
Когда возвращенный массив содержит записи, не имеющие соответствия
tagScheme
, та запись является экземпляромNSNull
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в iOS 5.0 и позже.
-
Возвращает массив лингвистических тегов и маркерных диапазонов.
Объявление
Swift
func tagsInRange(_
range
: NSRange, schemetagScheme
: String, optionsopts
: NSLinguisticTaggerOptions, tokenRangestokenRanges
: AutoreleasingUnsafeMutablePointer<NSArray?>) -> [AnyObject]Objective C
- (NSArray *)tagsInRange:(NSRange)
range
scheme:(NSString *)tagScheme
options:(NSLinguisticTaggerOptions)opts
tokenRanges:(NSArray **)tokenRanges
Параметры
range
Диапазон, из которого можно возвратить теги.
tagScheme
Схема тега. См. Лингвистические Схемы Тега возможных значений.
opts
Лингвистические опции теггера использовать. Посмотрите NSLinguisticTaggerOptions для констант. Эти константы могут быть объединены с помощью оператора C-битового-«ИЛИ».
tokenRanges
Возвраты ссылкой массив маркерных объектов диапазона перенеслись в
NSValue
объекты.Возвращаемое значение
Массив схем тега, соответствующих записям в
tokenRanges
массив.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в iOS 5.0 и позже.
-
Возвращает диапазон границы предложения, содержащей указанный диапазон.
Объявление
Параметры
charRange
Диапазон.
Возвращаемое значение
Возвращает диапазон содержащего предложения
charRange
.Обсуждение
Этот метод может использоваться для получения диапазона предложения включения, данного маркерный диапазон.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в iOS 5.0 и позже.
-
Эти константы указывают лингвистические опции теггера. Они могут быть объединены с помощью оператора C-битового-«ИЛИ».
Объявление
Swift
struct NSLinguisticTaggerOptions : RawOptionSetType { init(_
rawValue
: UInt) init(rawValuerawValue
: UInt) static var OmitWords: NSLinguisticTaggerOptions { get } static var OmitPunctuation: NSLinguisticTaggerOptions { get } static var OmitWhitespace: NSLinguisticTaggerOptions { get } static var OmitOther: NSLinguisticTaggerOptions { get } static var JoinNames: NSLinguisticTaggerOptions { get } }Objective C
enum { NSLinguisticTaggerOmitWords = 1 << 0, NSLinguisticTaggerOmitPunctuation = 1 << 1, NSLinguisticTaggerOmitWhitespace = 1 << 2, NSLinguisticTaggerOmitOther = 1 << 3, NSLinguisticTaggerJoinNames = 1 << 4 }; typedef NSUInteger NSLinguisticTaggerOptions;
Константы
-
OmitWords
NSLinguisticTaggerOmitWords
Опустите маркеры типа NSLinguisticTagWord (элементы считали слова).
Доступный в iOS 5.0 и позже.
-
OmitPunctuation
NSLinguisticTaggerOmitPunctuation
Опустите маркеры типа NSLinguisticTagPunctuation (вся пунктуация).
Доступный в iOS 5.0 и позже.
-
OmitWhitespace
NSLinguisticTaggerOmitWhitespace
Опустите маркеры типа NSLinguisticTagWhitespace (пробел всех видов).
Доступный в iOS 5.0 и позже.
-
OmitOther
NSLinguisticTaggerOmitOther
Опустите маркеры типа NSLinguisticTagOther (нелингвистические элементы, такие как символы).
Доступный в iOS 5.0 и позже.
-
JoinNames
NSLinguisticTaggerJoinNames
Как правило, имена многократного слова будут возвращены как многократные маркеры, после стандартной практики токенизации теггера. Если эта опция будет установлена, то имена многократного слова будут объединены и возвращены как единственный маркер.
Доступный в iOS 5.0 и позже.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в iOS 5.0 и позже.
-
-
Эти константы указывают лингвистические схемы тега, используемые
initWithTagSchemes:options:
создать лингвистический экземпляр теггера. МетодtagSchemes
возвращает массив схем, с которыми создавался экземпляр.Объявление
Swift
let NSLinguisticTagSchemeTokenType: String let NSLinguisticTagSchemeLexicalClass: String let NSLinguisticTagSchemeNameType: String let NSLinguisticTagSchemeNameTypeOrLexicalClass: String let NSLinguisticTagSchemeLemma: String let NSLinguisticTagSchemeLanguage: String let NSLinguisticTagSchemeScript: String
Objective C
NSString *const NSLinguisticTagSchemeTokenType; NSString *const NSLinguisticTagSchemeLexicalClass; NSString *const NSLinguisticTagSchemeNameType; NSString *const NSLinguisticTagSchemeNameTypeOrLexicalClass; NSString *const NSLinguisticTagSchemeLemma; NSString *const NSLinguisticTagSchemeLanguage; NSString *const NSLinguisticTagSchemeScript;
Константы
-
NSLinguisticTagSchemeTokenType
Эта схема тега классифицирует маркеры согласно их широкому типу: слово, пунктуация, пробел, и т.д. Возможные теги:
NSLinguisticTagWord
,NSLinguisticTagPunctuation
,NSLinguisticTagWhitespace
, илиNSLinguisticTagOther
. Для этой схемы клиент может использовать равенство указателя для сравнения значений с константами тега.Доступный в iOS 5.0 и позже.
-
NSLinguisticTagSchemeLexicalClass
Эта схема тега классифицирует маркеры согласно классу: часть речи для слов, типа пунктуации или пробела, и т.д. Значение будет одной из констант, указанных в NSLinguisticTagSchemeLexicalClass. Для этой схемы клиент может использовать равенство указателя для сравнения значений с константами тега.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagSchemeNameType
Эта схема тега классифицирует маркеры относительно того, являются ли они частью именованных сущностей различных типов или нет. Возможные теги:
NSLinguisticTagPersonalName
,NSLinguisticTagPlaceName
, илиNSLinguisticTagOrganizationName
. Для этой схемы клиент может использовать равенство указателя для сравнения значений с константами тега.Доступный в iOS 5.0 и позже.
-
NSLinguisticTagSchemeNameTypeOrLexicalClass
Эта схема тега следует
NSLinguisticTagSchemeNameType
для имен,NSLinguisticTagSchemeLexicalClass
для всех других маркеров. Возможные теги - указанные в NSLinguisticTagSchemeLexicalClass или NSLinguisticTagSchemeNameType. Для этой схемы клиент может использовать равенство указателя для сравнения значений с константами тега.Доступный в iOS 5.0 и позже.
-
NSLinguisticTagSchemeLemma
Эта схема тега предоставляет основу формы слов, если известный.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagSchemeLanguage
Эта схема тега тегирует маркеры согласно их сценарию. Значения тега будут стандартными сокращениями языка, такими как «en», «франк», «de», и т.д., как используется с
NSOrthography
класс. Обратите внимание на то, что теггер обычно пытается определить язык текста на уровне всего предложения или абзаца, а не пословно.Доступный в iOS 5.0 и позже.
-
NSLinguisticTagSchemeScript
Эта схема тега тегирует маркеры согласно их сценарию. Значения тега будут стандартными сокращениями сценария, такими как «Latn», «Cyrl», «Jpan», «Ханс», «Hant», и т.д.
Доступный в iOS 5.0 и позже.
-
-
Эти константы возвращают лингвистический тип маркера согласно своему широкому типу.
Объявление
Swift
let NSLinguisticTagWord: String let NSLinguisticTagPunctuation: String let NSLinguisticTagWhitespace: String let NSLinguisticTagOther: String
Objective C
NSString *const NSLinguisticTagWord; NSString *const NSLinguisticTagPunctuation; NSString *const NSLinguisticTagWhitespace; NSString *const NSLinguisticTagOther;
Константы
-
NSLinguisticTagWord
Маркер указывает слово.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagPunctuation
Маркер указывает пунктуацию.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagWhitespace
Маркер указывает пробел любого вида.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagOther
Маркер указывает маркер кроме в настоящее время определяемых.
Доступный в iOS 5.0 и позже.
-
-
Эти константы указывают лексический класс маркера.
Объявление
Swift
let NSLinguisticTagNoun: String let NSLinguisticTagVerb: String let NSLinguisticTagAdjective: String let NSLinguisticTagAdverb: String let NSLinguisticTagPronoun: String let NSLinguisticTagDeterminer: String let NSLinguisticTagParticle: String let NSLinguisticTagPreposition: String let NSLinguisticTagNumber: String let NSLinguisticTagConjunction: String let NSLinguisticTagInterjection: String let NSLinguisticTagClassifier: String let NSLinguisticTagIdiom: String let NSLinguisticTagOtherWord: String let NSLinguisticTagSentenceTerminator: String let NSLinguisticTagOpenQuote: String let NSLinguisticTagCloseQuote: String let NSLinguisticTagOpenParenthesis: String let NSLinguisticTagCloseParenthesis: String let NSLinguisticTagWordJoiner: String let NSLinguisticTagDash: String let NSLinguisticTagOtherPunctuation: String let NSLinguisticTagParagraphBreak: String let NSLinguisticTagOtherWhitespace: String
Objective C
NSString *const NSLinguisticTagNoun; NSString *const NSLinguisticTagVerb; NSString *const NSLinguisticTagAdjective; NSString *const NSLinguisticTagAdverb; NSString *const NSLinguisticTagPronoun; NSString *const NSLinguisticTagDeterminer; NSString *const NSLinguisticTagParticle; NSString *const NSLinguisticTagPreposition; NSString *const NSLinguisticTagNumber; NSString *const NSLinguisticTagConjunction; NSString *const NSLinguisticTagInterjection; NSString *const NSLinguisticTagClassifier; NSString *const NSLinguisticTagIdiom; NSString *const NSLinguisticTagOtherWord; NSString *const NSLinguisticTagSentenceTerminator; NSString *const NSLinguisticTagOpenQuote; NSString *const NSLinguisticTagCloseQuote; NSString *const NSLinguisticTagOpenParenthesis; NSString *const NSLinguisticTagCloseParenthesis; NSString *const NSLinguisticTagWordJoiner; NSString *const NSLinguisticTagDash; NSString *const NSLinguisticTagOtherPunctuation; NSString *const NSLinguisticTagParagraphBreak; NSString *const NSLinguisticTagOtherWhitespace;
Константы
-
NSLinguisticTagNoun
Маркер является существительным.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagVerb
Этот маркер является глаголом.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagAdjective
Этот маркер является прилагательным
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagAdverb
Этот маркер является наречием.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagPronoun
Этот маркер является местоимением.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagDeterminer
Этот маркер является детерминативом.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagParticle
Этот маркер является частицей.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagPreposition
Этот маркер является предлогом.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagNumber
Этот маркер является числом.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagConjunction
Этот маркер является соединением.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagInterjection
Этот маркер является междометием.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagClassifier
Этот маркер является классификатором.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagIdiom
Этот маркер является идиомой.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagOtherWord
Этот маркер является некоторым другим словом.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagSentenceTerminator
Этот маркер является разделителем предложения.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagOpenQuote
Этот маркер является открытой кавычкой.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagCloseQuote
Этот маркер является близкой кавычкой.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagOpenParenthesis
Этот маркер является открывающей скобкой.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagCloseParenthesis
Этот маркер является близкой круглой скобкой.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagWordJoiner
Этот маркер является столяром слова.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagDash
Этот маркер является тире.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagOtherPunctuation
Этот маркер является пунктуацией, не распознанной как другой тип маркера.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagParagraphBreak
Этот маркер является концом абзаца.
Доступный в iOS 5.0 и позже.
-
NSLinguisticTagOtherWhitespace
Этот маркер является пробелом.
Доступный в iOS 5.0 и позже.
-
-
Эти константы определяют лингвистические теги для определенных типов слов: люди, места и организации.
Объявление
Swift
let NSLinguisticTagPersonalName: String let NSLinguisticTagPlaceName: String let NSLinguisticTagOrganizationName: String
Objective C
NSString *const NSLinguisticTagPersonalName; NSString *const NSLinguisticTagPlaceName; NSString *const NSLinguisticTagOrganizationName;
Константы