Slide 37
Slide 37 text
Compare NLTagger and NSLinguisticTagger
func testNLTagIsEqualToNSLinguisticTag() {
let tSchemes: [NLTagScheme] =
[.language, .lemma, .lexicalClass, .nameTypeOrLexicalClass, .nameType, .tokenType, .script]
let lSchemes: [NSLinguisticTagScheme] =
[.language, .lemma, .lexicalClass, .nameTypeOrLexicalClass, .nameType, .tokenType, .script]
let tTagger = NLTagger(tagSchemes: tSchemes)
let lTagger = NSLinguisticTagger(tagSchemes: lSchemes)
zip(tSchemes, lSchemes).forEach { (tScheme, lScheme) in
print("---- \(tScheme.rawValue) ----")
XCTAssertEqual(tScheme.rawValue, lScheme.rawValue)
let tags = tTagger.tags(text: text, unit: .word, scheme: tScheme, options:
[.omitPunctuation, .omitWhitespace])
let lTags = lTagger.tags(text: text, unit: .word, scheme: lScheme, options:
[.omitPunctuation, .omitWhitespace])
zip(tags, lTags).forEach({ (tTag, lTag) in
print(tTag.0.rawValue, lTag.0.rawValue, tTag.0.rawValue == lTag.0.rawValue)
XCTAssertEqual(tTag.0.rawValue, lTag.0.rawValue)
XCTAssertEqual(text[tTag.1], text[Range(lTag.1, in: text)!])
let text = "I could not go WWDC in this year."