比如这样的一行数据:1235854,1586389,8638 56438,1687,18934,18935,02;56158,16257,12534,12535,03;
其中8638 56438这两个数字之间是tab制表符,我想要取制表符之后的第一个数和分号后的第一个数 ,再取18934,18935和12534,12535这两组数。还请大神指教啊
想到方法了!先把制表符和分号替换成逗号,在用逗号把字符串转换成数组的形式,就可以提取啦!
这个问题就这么多的条件吗?
前两个数 你可以通过charAt取制表符和;的下标,取到下标后+1就可以取到这两个数了。后面的数感觉没有可以利用的条件啊。
取分号和制表符的都给你写出来了,剩下两组,要求不明
public class splitstring {
public static void main(String[] args) {
String str = "1235854,1586389,8638 56438,1687,18934,18935,02;56158,16257,12534,12535,03;12314,4965,1324";
String[] as = str.split(",");
for (String s : as) {
if(s.contains("\t")) {
String[] ts = s.split("\t");
System.out.println(ts[1]); //输出\t后的第一个数
}
if(s.contains(";")) {
String[] ts = s.split(";");
System.out.println(ts[1]); //输出;后的第一个数
}
}
}
}
先把制表符和分号替换成逗号,在用逗号把字符串转换成数组的形式,就可以提取啦!