scala中是否有一个命令可以忽略所有类型的数字,例如" IgnoreNumbers()〜> "
我是scala新手,事实上,我只需要使用这种语言的一个脚本。
非常感谢您的帮助!
来自http://nlp.stanford.edu/software/tmt/tmt-0.4/examples/example-1-dataset.scala的标记器:
val tokenizer = {
SimpleEnglishTokenizer() ~> // Remove punctuation
CaseFolder() ~> // Lowercase everything
WordsAndNumbersOnlyFilter() ~> // Ignore non-words and non-numbers
MinimumLengthFilter(3) // Take terms with >=3 characters
}
答案 0 :(得分:0)
我从未使用过ScalaNLP,但是通过简单地删除Number
用法来修改(或更好地创建新类型)基于WordsAndNumbersOnlyFilter似乎是微不足道的,例如< / p>
case class WordsOnlyFilter() extends Transformer {
// original from WordsAndNumbersOnlyFilter
// override def apply(terms : Iterable[String]) =
// terms.filter(term => TokenType.Word.matches(term) || TokenType.Number.matches(term));
// Modification that doesn't use/accept TokenType.Number
override def apply(terms : Iterable[String]) =
terms.filter(term => TokenType.Word.matches(term));
}
然后:
val tokenizer = {
// ..
WordsOnlyFilter() ~> // Ignore non-words
// ..
}