gpt4 book ai didi

java - 如何在 Java 中创建一个包含带引号的字符串的字符串?

转载 作者:行者123 更新时间:2023-11-30 06:11:18 25 4
gpt4 key购买 nike

我想将带有选项的字符串放入 Weka。选项字符串内部是 weka 分词器字符串,分词器字符串内部是定界符选项字符串。我收到错误消息“没有为 -delimiters 选项指定值。”如何格式化字符串?

这是我的代码:

String[] options = weka.core.Utils.splitOptions("weka.filters.unsupervised.attribute.StringToWordVector "
+ "-R first-last -W 1000 -prune-rate -1.0 -N 0 -stemmer weka.core.stemmers.NullStemmer "
+ "-stopwords-handler weka.core.stopwords.Null -M 1 -tokenizer "
+ "\"weka.core.tokenizers.NGramTokenizer -max 5 -min 1 -delimiters \" \\r\\n\\t.,;:\\\'\\\"()?!\"");

StringToWordVector remove = new StringToWordVector();

This question没有解决我的问题。

最佳答案

您收到的错误消息说它在 -delimeters 选项后找不到任何值。这样做的原因是 Weka 检测到字符串在 -delimeter 查询参数后立即以双引号结尾。其根本原因是出现在 weka.core.tokenizers.NGramTokenizer 术语之前的流氓引号,该术语属于 -tokenizer查询参数:

String[] options = weka.core.Utils.splitOptions("weka.filters.unsupervised.attribute.StringToWordVector "
+ "-R first-last -W 1000 -prune-rate -1.0 -N 0 -stemmer weka.core.stemmers.NullStemmer "
+ "-stopwords-handler weka.core.stopwords.Null -M 1 -tokenizer "
+ "\"weka.core.tokenizers.NGramTokenizer -max 5 -min 1 -delimiters \" \\r\\n\\t.,;:\\\'\\\"()?!\"");
^ rogue quotation mark. Bad.

将字符串更改为以下内容应该没问题:

String[] options =
weka.core.Utils.splitOptions(
"weka.filters.unsupervised.attribute.StringToWordVector "
+ "-R first-last -W 1000 -prune-rate -1.0 -N 0 "
+ "-stemmer weka.core.stemmers.NullStemmer "
+ "-stopwords-handler weka.core.stopwords.Null -M 1 "
+ "-tokenizer weka.core.tokenizers.NGramTokenizer -max 5 -min 1 "
+ "-delimiters \" \\r\\n\\t.,;:\\\'\\\"()?!\"");

关于java - 如何在 Java 中创建一个包含带引号的字符串的字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34326229/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com