字符串在java中进行标记

时间:2011-12-21 09:39:32

标签: java stringtokenizer

我需要使用分隔符来标记字符串。

StringTokenizer能够使用给定的分隔符对字符串进行标记。但是,当字符串中有两个连续的分隔符时,它不会将其视为一个标记。

先谢谢你的帮助

此致

4 个答案:

答案 0 :(得分:3)

StringTokenizer对象的构造函数的第二个参数只是一个包含您需要的所有分隔符的字符串。

StringTokenizer st = new StringTokenizer(str, "@!");

在这种情况下,有两个分隔符@!

考虑这个例子:

String s = "Hello, i am using Stack Overflow;";
System.out.println("s = " + s);
String delims = " ,;";
StringTokenizer tokens = new StringTokenizer(s, delims);
while(tokens.hasMoreTokens())
  System.out.println(tokens.nextToken());

在这里你会得到一个类似于3个分隔符的输出:

Hello
,

i

am

using

Stack

Overflow

;

答案 1 :(得分:2)

查看String.split()

这应该可以满足您的需求。

http://docs.oracle.com/javase/6/docs/api/java/lang/String.html

答案 2 :(得分:2)

使用java.lang.String的split()方法并传递一个与您的一个或多个分隔符条件匹配的正则表达式。

例如可以使用"a||b|||c||||d"使用生成的数组split("\\|{2,}");

[a,b,c,d]进行标记

答案 3 :(得分:1)

public StringTokenizer(String str,
                       String delim)

为指定的字符串构造string tokenizerdelim argument中的字符是分隔标记的分隔符。 分隔符字符本身不会被视为令牌。
所以你可以使用..

String.split(String delim);