我可以从命令行运行 POS 标记器以将新行保留为
java -classpath stanford-postagger.jar edu.stanford.nlp.tagger.maxent.MaxentTagger -model models/wsj-0-18-bidirectional-distsim.tagger -sentenceDelimiter newline -textFile input.txt > output.txt
给定参数“-sentenceDelimiter换行符”。但我想知道如何在java程序中使用API来做?
我在FAQ中看到,我们可以设置ssplit.newlineIsSentenceBreak,但不知道如何设置。
如有任何帮助或建议,我们将不胜感激。
我想在单行中标记这种句子。
"what is your name?" he asked.
因为一行可能包含许多句子标记。
非常感谢。 什雷斯塔
最佳答案
您可以使用ssplit.eolonly
属性。根据documentation ,它的意思是“仅在换行符上分割句子。与 '-tokenize.whitespace true' 结合使用效果很好,在这种情况下,StanfordCoreNLP 会将输入视为每行一个句子,仅在空格上分隔单词。”
props.setProperty("ssplit.eolonly", "true");
pipeline = new StanfordCoreNLP(props);
关于java - java API中的-sentenceDelimiter换行符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31650485/