我需要从字符串数组中删除';'
。任何解决方案?
我在课堂上所做的是检索一段没有空格连接的长字符串
(thisisalongpieceofstringtobeseparated)
我通过在它们之间插入';'
来分隔它们
(这;是;一个;长;片;的;串;对;是;分开;)
然后我使用.split(";")
将它们添加到数组中。一切都很成功,但最后一个索引有';'
。
this
is
a
long
piece
of
string
to
be
separated;
需要删除最后一个;
根据要求,代码如下。
while (line != null) {
if(line.contains("../../"))
{
int startIndex = line.indexOf("../../") + 6;
int endIndex = line.indexOf(">", startIndex + 1);
String abc = "http://www.google.com/";
String imageSrc = line.substring(startIndex,endIndex);
//complete full url
String xyz = abc +imageSrc;
xyz = xyz.substring(0,xyz.indexOf('"'));
xyz = xyz +";";
content += xyz;
mStrings = content.split(";");
答案 0 :(得分:2)
我认为你并没有告诉我们整个故事,因为当你在;
上分开时,将会忽略尾随的;
。通过运行此测试代码自行查看:
public static void main(String[] args) {
System.out.println(Arrays.toString("a;b;c;".split(";")));
}
输出:
[a, b, c]
“回答”是什么都不做!它应该已经有用了!
答案 1 :(得分:2)
String str="This; is; my; test;";
String[] strArr=str.split(";");
for(int i=0;i<strArr.length;i++)
{
System.out.println("Str:::"+strArr[i]);
// add strArr[i] to an array or go through Arrays.toString()
}
代码中没什么特别之处,我的意思是如果你使用spilled()那么它已经为你工作了,如果不是那么你的代码就有问题,发布你的代码以查看你的代码到底出了什么问题,或者做了什么这样
答案 2 :(得分:1)
在分割之前从字符串中删除最终;
是不是最简单?也就是说,删除最后一个字符(假设总是;
):
var newStr = str.substring(0, str.length-1);
然后拆分该字符串。
答案 3 :(得分:1)
Mikel的解决方案工作少得多,但您也可以使用StringTokenizer并将returnDelims
指定为false。
http://docs.oracle.com/javase/1.4.2/docs/api/java/util/StringTokenizer.html