2

这是 swift 中的错误吗?或者我在这里遗漏了什么我已经声明了以下内容 let opts = (NSLinguisticTaggerOptions.OmitWhitespace | NSLinguisticTaggerOptions.JoinNames)

我收到以下错误致命错误:Can't unwrap Optional.None Playground execution failed: error: Execution was interrupted, reason: EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)。进程一直停留在被中断的地方,使用“thread return -x”返回表达式求值前的状态。

如果我将选项内联到调用方法中,则更新 ,它似乎有效

 let tagger = NSLinguisticTagger(tagSchemes:NSLinguisticTagger.availableTagSchemesForLanguage("en"), options: 3)

tagger.string = someString
    //if i inline the options it seems to work
    tagger.enumerateTagsInRange(r, scheme: NSLinguisticTagSchemeNameTypeOrLexicalClass, options:(NSLinguisticTaggerOptions.OmitWhitespace | NSLinguisticTaggerOptions.JoinNames)){
            tag,range,_,_ in
            let token = nsstr.substringWithRange(range)
            println("\(tag), \(token)")

        }
4

1 回答 1

2

对于options参数,请尝试Int(opts.toRaw()).

(您尝试的“3”有效,因为它是原始版本。)

于 2014-08-06T00:37:39.340 回答