2012-10-25 42 views
2

我需要拆分一个字符串,它是“克米特D.Frogge”,所以这是我使用的代码:字符串标记分隔符改变,没有表现出来

firstName = strTkn.nextToken(); 
middleInitial = strTkn.nextToken("."); 
//changing the delimiters to a . because there is no space between D and Frogge 
lastName = strTkn.nextToken(" "); 
//changing delimiters back to a space 
hourlyWage = Double.parseDouble(strTkn.nextToken()); 

然而,结果是:

Kermit 
D 
.Frogge 

我将如何使用字符串标记化程序,并保持期限?

+0

可以串的使用替代() –

回答

3

使用具有两个参数的构造函数。第二个参数是一个字符串,其字符是分隔符。

StringTokenizer st = new StringTokenizer(string, " ."); 
1

一个更多钞票的解决方案

strTkn.replace("."," "); 
String[] name=strTkn.split(" "); 
0

如果他的名字是“克米特D. Frogge”(注意中间初始和姓氏之间的空间),那么他的名字将是“克米特” ,他的中间首字母是“D”,他的姓氏是“Frogge”。

然后,您可以使用replaceAll() method摆脱“。”s。

0

应该用分隔符集的中间令牌

String middleInitial = strTkn.nextToken(" .");