NSLinguisticTagger
あなたは!でこれを行うことができます 私はこれまで一度も使用したことがありませんが、これを一緒にハックしました:
NSString *str = @"i have a cat";
NSLinguisticTagger *tagger = [[NSLinguisticTagger alloc] initWithTagSchemes:[NSArray arrayWithObject:NSLinguisticTagSchemeLexicalClass] options:~NSLinguisticTaggerOmitWords];
[tagger setString:str];
[tagger enumerateTagsInRange:NSMakeRange(0, [str length])
scheme:NSLinguisticTagSchemeLexicalClass
options:~NSLinguisticTaggerOmitWords
usingBlock:^(NSString *tag, NSRange tokenRange, NSRange sentenceRange, BOOL *stop) {
NSLog(@"found: %@ (%@)", [str substringWithRange:tokenRange], tag);
}];
[tagger release];
これを実行すると、次のログが記録されます。
found: i (Pronoun)
found: have (Verb)
found: a (Determiner)
found: cat (Noun)
ただし、これNSLinguisticTagger
はiOS 5以降(およびMac OS X 10.7以降)でのみ使用可能であることに注意してください。