java - java API中的-sentenceDelimiter换行符

标签 java nlp tokenize

我可以从命令行运行 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/

相关文章:

java - 如何使用 JSONObject 创建 JSON 数组 android java

java - 按日期排序。比较器。 java

python - 从 Stanford Parser 的上下文无关短语结构输出中提取信息

nlp - 创建包含部分的 Spacy Doc

python - 使用 spaCy 3.0 将数据从旧的 Spacy v2 格式转换为全新的 Spacy v3 格式

python - 如何使用 NLTK nltk.tokenize.texttiling 将文本拆分为段落?

java - 使用替代逗号 (,) 拆分字符串

java - 内部类中 boolean 标志的最终数组而不是非最终变量的模式

iOS:如何在使用 componentSeparatedByCharactersInSet 时维护分隔符

java - 字符串格式和语言环境问题 - Android