有一条查询参数不确定的sql字符串,例如:select a as A,b as B,c as C from d
需要用java截取字符串中的所有别名放到集合中。急用,求速解
已经帮你实现了。
String s = "select a as A,b as B,c as C from d ";
char[] c = s.toCharArray();
int count = 0; // 计数器
for (char c1 : c) {
if(c1 == 'a' && c[count+1] == 's'){//如果当前字符是a,并且下一个是s
System.out.println(s.substring(count + 2 , count +4));//得到as后面第二个位置开始,第四个位置结束的值
}
count = count + 1;
}
需要得到A,B,C?
但是你要保证的是 你的sql要写得规范一点
as 别名 之间保证只有一个空格
或者你先对sql处理一下 把所有的2个空格以上的 替换为一个空格 replaceAll(" ","")