在java中拆分字符串的问题

dxxyhpgq  于 2021-07-12  发布在  Java
关注(0)|答案(1)|浏览(324)

我在用多个参数拆分字符串时遇到问题,必须拆分的字符串由空格、逗号、数字符号和冒号组成。我试图按每个参数拆分字符串,但遇到了在输出中多次打印内容的问题,因为我多次拆分字符串。我尝试了数组,但没有成功,因为它只是寻找空间,而不是其他参数。然后我想到了一个使用定界符的想法,这个方法非常好,直到我遇到了一个错误,程序将继续无休止地运行而不输出任何东西。所以我需要的帮助是能够以给定的格式分解字符串语句。这里是输入:克拉克,肯,xl:钢人,匹兹堡:沃德#86,这里是我应该得到的输出:
肯克拉克
xl码
匹兹堡
钢铁工人
86号病房
以下是我目前的代码:

public class NFL_Jersey_Order {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {

       Scanner scan = new Scanner(System.in); 
       System.out.println("Enter Order Information: ");
       //String name1 = scan.nextLine(); 
       scan.useDelimiter(",");

       String last = scan.next();
       String first = scan.next();
       first = first.trim();

       scan.useDelimiter(" ");
       String space1 = scan.next();
       String size = scan.next(); 
       //size = size.trim(); 

       scan.useDelimiter(" ");
       String space3 = scan.next(); 
       String space4 = scan.next(); 

       scan.useDelimiter(" ");
       String city = scan.next();

       scan.useDelimiter(" ");
       String space5 = scan.next(); 
       String player = scan.next(); 

 System.out.print(first + " " + last + "\n" + size + "\n" + space4 + "\n" + player);
}
}
pwuypxnk

pwuypxnk1#

我自己想出来了,又开始使用数组了。

public class Order_2 {

    public static void main(String[] args) {

      Scanner scan = new Scanner(System.in); 
      System.out.println("Enter Order Information: ");
      String name1 = scan.nextLine();

      String substrings[] = name1.split("[,:# ]"); 

      String team = substrings[7];
      substrings[7] = team.toUpperCase();

        System.out.println(substrings[2] + "\n" + substrings[0] + "\n" + substrings[4] + "\n" + substrings[8] + "\n" + substrings[7] + "\n" + substrings[11] + "-" + substrings[12]);

    }
}

相关问题