下面是一个函数,它获取一个长字符串,并返回一个按段落分割的字符串。
问题是k是空的。为什么split()
函数不起作用?
private String ConvertSentenceToParaGraph(String sen) {
String nS = "";
String k[] = sen.split(".");
for (int i = 0; i < k.length - 1; i++) {
nS = nS + k[i] + ".";
Double ran = Math.floor((Math.random() * 2) + 4);
if (i > 0 && i % ran == 0) {
nS = nS + "\n\n";
}
}
return nS;
}
split()
方法接受正则表达式。和是元字符,它匹配除换行符以外的任何字符。你需要逃离它。使用:
String k[] = sen.split("\\.");
split
需要一个正则表达式,”
是“任意字符”的正则表达式。如果要在每个上拆分
字符,你需要转义它:
String k[] = sen.split("\\.");
字符串。split(String regex)
采用正则表达式。一个点
表示“每个字符”。你必须转义它
\\
如果要在点字符上拆分。
问题内容: 我正在尝试使用Java中的 Split 函数拆分字符串 它给了我结果 但是当我尝试以下代码时 它给了我 为什么Java split函数无法拆分以“ |”分隔的字符串 问题答案: String#split()方法接受a 而不接受a 。 因为 是元字符,在正则表达式中有特殊含义。 当您逃脱它时,它会起作用。 更新: 在java:OFFICIAL DOCS中处理特殊字符 。 附带说明: 在J
问题内容: 我正在尝试使用opencv v 2.1创建图像,但出现此错误: AttributeError:“模块”对象没有属性“ CreateImage” 该代码是 问题答案: 您正在覆盖名称空间。仅使用,而不使用其他。
问题内容: 我的cardlayout的下一个功能正常运行,但以前的功能不起作用。就我而言,只有“ layout.previous( ___ );” 在我的makePanel()方法中的actionPerformed方法主体中应该可以工作,但是当我运行程序并单击prev按钮时,什么也没有发生。我究竟做错了什么?– 问题答案: 一旦向面板中添加了一些其他组件,我就不会遇到问题(与您的代码无关)。 但是
问题内容: 我想在不使用split的情况下拆分字符串。任何人都可以解决我遇到的问题,但是我找不到确切的逻辑。 问题答案: 我将假定这是家庭作业,因此我仅给出一些片段作为提示: 查找给定子串的所有出现的索引 这是一个与参数一起使用以查找较大字符串中所有出现的子字符串的示例: 字符串API链接 从指定的索引开始,返回指定子字符串首次出现在该字符串中的索引。如果不存在这种情况,则返回-1。 相关问题 在
问题内容: 我正在使用这种技术来加载数据。因此,我创建了以下解析函数: 存在的问题是,是在瞬间函数执行。它是正确的/错误吗?我该如何解决? 问题答案: 您需要改用。该只更新 后 的路线被改变。因此,您的代码应遵循以下原则:
问题内容: 我了解到删除前导和尾随空格。但是在我的情况下,它无法正常工作,我正在尝试使用以下代码,但是输出的前导和尾随空格。但是我的期望是文本没有开头和结尾的空格。这是我的代码。 请帮我 问题答案: 您需要将结果重新分配给: 请记住, Java中的字符串是不可变的 ,因此 几乎 所有的String类方法都将创建并返回新的字符串,而不是就地修改字符串。 尽管这是题外话,但是(正如我在那所说的),值得