可能重复:
查询 Java 中的 trim() 方法
我正在解析站点的用户名和其他信息,每个站点后面都有一堆空格(但单词之间有空格)。例如:“Bob the Builder”或“Sam thewelder”。空格的数量因名称而异。我想我会使用 .trim(),因为我以前用过这个。但是,这给我带来了麻烦。我的代码如下所示:
for (int i = 0; i < splitSource3.size(); i++) {
splitSource3.set(i, splitSource3.get(i).trim());
}
结果是一样的;最后没有空格被删除。提前感谢您的出色回答!
更新:
完整的代码有点复杂,因为首先解析出 HTML 标记。它完全是这样的:
for (String s : splitSource2) {
if (s.length() > "<td class=\"dddefault\">".length() && s.substring(0, "<td class=\"dddefault\">".length()).equals("<td class=\"dddefault\">")) {
splitSource3.add(s.substring("<td class=\"dddefault\">".length()));
}
}
System.out.println("\n");
for (int i = 0; i < splitSource3.size(); i++) {
splitSource3.set(i, splitSource3.get(i).substring(0, splitSource3.get(i).length() - 5));
splitSource3.set(i, splitSource3.get(i).trim());
System.out.println(i + ": " + splitSource3.get(i));
}
}
更新:
冷静下来。我从来没有说问题出在 Java 上,我也从来没有说它是一个错误或损坏或任何东西。我只是说我遇到了麻烦,并发布了我的代码供您协作并帮助解决我的问题。注意短语“我的问题”而不是“java 的问题”。我实际上已经打印了代码
System.out.println(i + ": " + splitSource3.get(i) + "*");
在之后的每个循环中。
这就是我知道我有问题的方式。顺便说一句,问题仍然没有解决。
更新:
示例输出(减去单引号):
'0: Olin D. Kirkland '
'1: Sophomore '
'2: Someplace, Virginia 12345<br />VA SomeCity<br />'
'3: Undergraduate '
编辑OP 在Query 中重新表述了他关于 Java 中的 trim() 方法的问题,其中发现问题是 Unicode 空白字符与String.trim()
.