tokenizer(tokenizer java)

科灵网 72 0

java.util.Stringtokenizer的作用是什么?如何使用?

用来对字符串进行切分,看下面的例子:

import java.util.*;

class Stringtokenizer_test

{

public static void main(String args[])

{

StringTokenizer st=new StringTokenizer("A new world is in front of you!"); //新建一个对象

while (st.hasMoreTokens()) //新建的StringTokenizer应该如此使用,该对象默认使用空格对字符串进行切分

{

System.out.println(st.nextToken());

}

}

}

输出:

A

new

world

is

in

front

of

you!

4. stringtokenizer类的主要用途是什么? 该类有哪几个重要的方法?

StringTokenizer 是一个Java的类,属于 java.util 包,用来分割字符串和枚举类型。

StringTokenizer 构造方法:

1. StringTokenizer(String str) :构造一个用来解析 str 的 StringTokenizer 对象。使用默认的分隔符:空格("")、制表符(\t)、换行符(\n)、回车符(\r)。

2. StringTokenizer(String str, String delim) :构造一个用来解析 str 的 StringTokenizer 对象,并提供一个指定的分隔符。

3. StringTokenizer(String str, String delim, boolean returnDelims) :构造一个用来解析 str 的 StringTokenizer 对象,并提供一个指定的分隔符,同时,指定是否返回分隔符。

StringTokenizer 常用方法:

1. int countTokens():返回nextToken方法被调用的次数。可以用来计算字符串分割单元的个数。

2. boolean hasMoreTokens():返回是否还有分隔符。可以用来判断,字符串分割有没有处理完。

3. boolean hasMoreElements():判断枚举 (Enumeration) 对象中是否还有数据。用来判断枚举类型有没有处理完。

4. String nextToken():返回从当前位置到下一个分隔符的字符串。

5. Object nextElement():返回枚举 (Enumeration) 对象的下一个元素。

6. String nextToken(String delim):与 4 类似,以指定的分隔符返回结果。

tokenizer(tokenizer java)-第1张图片-科灵网

求StringTokenizer的用法

StringTokenizer 是出于兼容性的原因而被保留的遗留类(虽然在新代码中并不鼓励使用它)。建议所有寻求此功能的人使用 String 的 split 方法或 java.util.regex 包。

使用正则表达式很容易的

String input=“aZ8sd★yu” ;

String []result = input.split"^[a-zA-Z]";

好久没用正则表达式了,也不知道正确不正确。。。

希望对你有所帮助

string tokenizer 类允许应用程序将字符串分解为标记。tokenization 方法比 StreamTokenizer 类所使用的方法更简单。StringTokenizer 方法不区分标识符、数和带引号的字符串,它们也不识别并跳过注释。

可以在创建时指定,也可以根据每个标记来指定分隔符(分隔标记的字符)集合。

StringTokenizer 的实例有两种行为方式,这取决于它在创建时使用的 returnDelims 标志的值是 true 还是 false:

如果标志为 false,则分隔符字符用来分隔标记。标记是连续字符(不是分隔符)的最大序列。

如果标志为 true,则认为那些分隔符字符本身即为标记。因此标记要么是一个分隔符字符,要么是那些连续字符(不是分隔符)的最大序列。

StringTokenizer 对象在内部维护字符串中要被标记的当前位置。某些操作将此当前位置移至已处理的字符后。

通过截取字符串的一个子串来返回标记,该字符串用于创建 StringTokenizer 对象。

下面是一个使用 tokenizer 的实例。代码如下:

StringTokenizer st = new StringTokenizer("this is a test");

while (st.hasMoreTokens()) {

System.out.println(st.nextToken());

}

输出以下字符串:

this

is

a

test

StringTokenizer 是出于兼容性的原因而被保留的遗留类(虽然在新代码中并不鼓励使用它)。建议所有寻求此功能的人使用 String 的 split 方法或 java.util.regex 包。

下面的示例阐明了如何使用 String.split 方法将字符串分解为基本标记:

String[] result = "this is a test".split("\\s");

for (int x=0; xresult.length; x++)

System.out.println(result[x]);

输出以下字符串:

this

is

a

test

怎么理解token,tokenize,tokenizer?

1、一种解释

token:令牌

tokenize:令牌化

tokenizer:令牌解析器

2、另一种翻译是:token可以翻译为“标记”,tokenize可以翻译为“标记解析”或“解析标记”,tokenizer可以翻译为“标记解析器”。

在编写词法分析器(Lexer)或语法分析器(Parser)的时候,除了Lexer和Parser这两个词会经常使用外,tokenize和tokenizer也会经常出现,基本上所有涉及到词法解析的源码都会用到tokenize。

在邱仲潘译的《Mastering Java 2》有这儿一段:

StreamTokenizer类根据用户定义的规则,从输入流中提取可识别的子串和标记符号,这个过程称为令牌化 ([i]tokenizing[/i]),因为流简化为了令牌符号。令牌([i]token[/i])通常代表关键字、变量名、字符串、直接量和大括号等 语法标点。

java中的StringTokenizer的用法

StringTokenizer st = new StringTokenizer("this is a test");

while (st.hasMoreTokens()) {

System.out.println(st.nextToken());

}

输出以下字符串:

this

is

a

test

StringTokenizer 是出于兼容性的原因而被保留的遗留类(虽然在新代码中并不鼓励使用它)。建议所有寻求此功能的人使用 String 的 split 方法或 java.util.regex 包。

下面的示例阐明了如何使用 String.split 方法将字符串分解为基本标记:

String[] result = "this is a test".split("\\s");

for (int x=0; xresult.length; x++)

System.out.println(result[x]);

输出以下字符串:

this

is

a

test

上述文章就是科灵网介绍的tokenizer和tokenizer java的详细回答,希望能够帮助到大家;如果你还想了解更多财经资讯知识,记得收藏关注我们。

标签: tokenizer

抱歉,评论功能暂时关闭!

微信号已复制,请打开微信添加咨询详情!