日期:2014-05-20  浏览次数:20648 次

判断一行字符串是否到尾字符
if(i == (s.length() - 1) || ch[i] == ' ' || ch[i] == ',' || ch[i] == '.' || ch[i] ==';')
s是字符串“sds sds dd,dsd”
ch是字符数组
我想分离字符串中的每个单词
i == (s.length() - 1)这句话不起作用,想问一下有什么办法能判断这行字符串到尾字符了
在线等

------解决方案--------------------
public class IsLastTest {

/**
* @param args
*/
public static void main(String[] args) {
// TODO 自动生成方法存根

String testString = "sds sds dd,ds";
char[] testChars = testString.toCharArray();
for(int i=0;i<testChars.length;i++){
if(testString.lastIndexOf(testString.substring(testString.length()-1, testString.length())) == i){
System.out.println("这是最后一个字符:"+testChars[i]);
}

}

}

}[code=Java][/code]
------解决方案--------------------
可以用正则表达式

String s = "sds sds dd,dsd";
Pattern p = Pattern.compile("\\w+");
Matcher m = p.matcher(s);
while (m.find()) {
System.out.println(m.group());
}