如何捕获分隔符也作为结果中的标记

时间:2016-02-27 09:56:02

标签: java

以下是基于分隔符创建令牌的代码。这将给出令牌,但不会考虑令牌结果中的分隔符。如果我们想在结果中包含分隔符,那么应该采用什么方法。

StringTokenizer tr=
new StringTokenizer("Will you come, yes/no",",/");
while (tr.hasMoreElements( ))
System.out.println(tr.nextElement( )+",");

因此输出应该是令牌:

将,你,来,是,/,不,

(而不仅仅是,你,来,是,不,)

1 个答案:

答案 0 :(得分:3)

/并非作为其中一个令牌,因为它没有被分隔符包围。如果您希望将其解析为令牌之一,那么您可以使用分隔符将其包围。

以下是代码段:

public static void main (String[] args)
{
    String sample = "Will you come,yes/no";
    StringTokenizer tr = new StringTokenizer(sample.replace(" ",",").replace("/",",/,"),",");
    while (tr.hasMoreElements())
        System.out.println(tr.nextElement() + ",");
}

输出:

Will,
you,
come,
yes,
/,
no,