如何不计算StringTokenizer中的空格

时间:2016-09-30 18:13:13

标签: java regex string tokenize stringtokenizer

我有这条线

split

我的输出是

StringTokenizer tk=new StringTokenizer (b=10," =",true);

这完美但又如果我的话就是这个

b
=
10

我的输出是

StringTokenizer tk=new StringTokenizer (DEFI b=10," =",true);

我不想在ST中包含那个空白的空白区域,我怎样才能避免包含空格,因为我想要这种输出

DEFI

b
=
10

2 个答案:

答案 0 :(得分:1)

如果可以的话,我建议使用String.split()方法:

String[] tokens = "DEFI b=10".split("(\\s|(?=\\=)|(?<=\\=))");

答案 1 :(得分:1)

String tokenizer根据指定的字符串来控制字符串标记生成器:(.update

      public StringTokenizer(String str, String delim, boolean returnDelims)

作为参数,你有一个声明一个int值的对象声明,一个等号的delim和一个为true的delim标志(它将delim字符作为标记返回)

也许你应该将String tokenizer实例重构为以下内容:

     String b = "DDEFI-b-=-10"; //Create the string to be evaluated

     String delim = "-"; //Create a delim which serves as a separator

(将字符串定义为“DEFI-b - = - 10” - 将为您的delim提供正确的间距)

     StringTokenizer tk= new StringTokenizer (b, delim);

    /* Loop through the elements printing out the specified string */

     while(tk.hasMoreElements()) {
          System.out.println(tk.nextToken());
       }



     //Result
     DEFI
     b
     =
     10