2014-02-25 43 views
3

我想分割一个字符串(行)的第一个空格,但只有第一个。StringTokenizer分隔一次

StringTokenizer linesplit = new StringTokenizer(line," "); 

例如“这是一个测试”。然后我想让这些字符串成为“This”和“是一个测试”。我怎么能使用StringTokenizer或有更好的选择?

回答

2

您可以使用拆分

String[] a = s.split("(?<=^\\S+)\\s"); 
5

String.split(模式,resultlength)做的。 使用:

String[] splitted = line.split(" ",2); 

的” 2' 参数意味着生成的数组的最大大小为2

+0

+1非常好的解决方案。我不知道'split'有这种能力。 –

+0

它会返回“这个”和“是一个测试”还是“这个”和“是”? – FazoM

+0

@Fazovsky“这个”和“是一个测试” – pdem

1

您必须纠正自己的逻辑这一点。类似这样的:

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] + " "; 
    } 
} 
相关问题