【发布时间】:2014-02-25 13:39:33
【问题描述】:
我想用第一个空格分割一个字符串(行),但只有第一个。
StringTokenizer linesplit = new StringTokenizer(line," ");
以“这是一个测试”为例。然后我希望字符串是“This”和“is a test”。我该如何使用 StringTokenizer 还是有更好的选择?
【问题讨论】:
标签: java split stringtokenizer
我想用第一个空格分割一个字符串(行),但只有第一个。
StringTokenizer linesplit = new StringTokenizer(line," ");
以“这是一个测试”为例。然后我希望字符串是“This”和“is a test”。我该如何使用 StringTokenizer 还是有更好的选择?
【问题讨论】:
标签: java split stringtokenizer
String.split(pattern,resultlength) 做到了。 使用:
String[] splitted = line.split(" ",2);
',2' 参数表示生成的 Array 最大大小为 2。
【讨论】:
split 有这种能力。
你可以这样做:
String firstPart = line.substring(0, line.indexOf(" "));
String secondPart = line.substring(line.indexOf(" ")+1);
检查文档: http://docs.oracle.com/javase/7/docs/api/java/lang/String.html
【讨论】:
你可以使用拆分
String[] a = s.split("(?<=^\\S+)\\s");
【讨论】:
您必须为此调整自己的逻辑。像这样:
String[] linesplit = line.split(" ");
String firstString = linesplit[0];
String secondString = new String();
for(for int i=1; i< linesplit.length; i++)
{
if(i==1)
{
secondString = linesplit[i];
}
else if(i != linesplit.length-1)
{
secondString = seconString + " " + linesplit[i];
}
else
{
secondString = seconString + linesplit[i] + " ";
}
}
【讨论】: