爻栗
2016-08-12 06:55
采纳率: 100%
浏览 1.6k
已结题

JAVA分割字符串的问题

比如这样的一行数据:1235854,1586389,8638 56438,1687,18934,18935,02;56158,16257,12534,12535,03;
其中8638 56438这两个数字之间是tab制表符,我想要取制表符之后的第一个数和分号后的第一个数 ,再取18934,18935和12534,12535这两组数。还请大神指教啊图片说明

  • 收藏

5条回答 默认 最新

  • 爻栗 2016-08-12 08:04
    已采纳

    想到方法了!先把制表符和分号替换成逗号,在用逗号把字符串转换成数组的形式,就可以提取啦!图片说明

    已采纳该答案
    打赏 评论
  • fanger8848 2016-08-12 07:07

    这个问题就这么多的条件吗?

    打赏 评论
  • fanger8848 2016-08-12 07:10

    前两个数 你可以通过charAt取制表符和;的下标,取到下标后+1就可以取到这两个数了。后面的数感觉没有可以利用的条件啊。

    打赏 评论
  • hongru_见鹿 2016-08-12 08:01

    取分号和制表符的都给你写出来了,剩下两组,要求不明
    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]); //输出;后的第一个数
    }
    }
    }
    }

    打赏 评论
  • 码界一棵葱 2016-08-18 05:22

    先把制表符和分号替换成逗号,在用逗号把字符串转换成数组的形式,就可以提取啦!

    打赏 评论

相关推荐 更多相似问题