java中的字符串标记化
我需要使用分隔符标记字符串java中的字符串标记化,java,stringtokenizer,Java,Stringtokenizer,我需要使用分隔符标记字符串 StringTokenizer能够使用给定的分隔符标记字符串。但是,当字符串中有两个连续的分隔符时,它不会将其视为标记 提前谢谢你的帮助 问候, public StringTokenizer(String str, String delim) 为指定的字符串构造一个。delim参数中的字符是分隔标记的分隔符分隔符字符本身不会被视为标记。 因此,您可以使用 String.split(String delim); 查看St
StringTokenizer
能够使用给定的分隔符标记字符串。但是,当字符串中有两个连续的分隔符时,它不会将其视为标记
提前谢谢你的帮助
问候,
public StringTokenizer(String str,
String delim)
为指定的字符串构造一个。delim参数中的字符是分隔标记的分隔符分隔符字符本身不会被视为标记。
因此,您可以使用
String.split(String delim);
查看String.split()
这应该符合你的要求
对象的构造函数的第二个参数是一个字符串,其中包含您需要的所有分隔符
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
;
使用java.lang.String的split()方法,并向其传递一个与一个或多个分隔符条件匹配的正则表达式
例如,“a | | b | | | | | | | | | | | | | | d”
可以用拆分(\\\\{2,})来表示代码>与生成的数组[a,b,c,d]
值得一提的是,它实现了枚举接口。请参阅StringTokenizer
javadocs状态StringTokenizer是一个遗留类,出于兼容性原因保留了它,尽管在新代码中不鼓励使用它。建议任何寻求此功能的人使用String的split方法或java.util.regex包。
因此您应该看看mcfinnigan和Francois提供的答案。