Lucene - 词元 (Token)



词元代表文档中的文本或单词,以及相关的详细信息,例如其元数据(位置、起始偏移量、结束偏移量、词元类型及其位置增量)。

类声明

以下是org.apache.lucene.analysis.Token类的声明

public class Token
   extends TermAttributeImpl
      implements TypeAttribute, PositionIncrementAttribute, 
         FlagsAttribute, OffsetAttribute, 
         PayloadAttribute, PositionLengthAttribute

字段

以下是org.apache.lucene.analysis.Token类的字段:

  • static AttributeSource.AttributeFactory TOKEN_ATTRIBUTE_FACTORY − 方便的工厂,它返回 Token 作为基本属性的实现,并为所有其他属性返回默认实现(附加“Impl”)。

类构造函数

下表显示了不同的类构造函数:

序号 构造函数及描述
1

Token()

构造一个文本为空的 Token。

2

Token(char[] startTermBuffer, int termBufferOffset, int termBufferLength, int start, int end)

使用给定的词元缓冲区(偏移量和长度)、起始和结束偏移量构造一个 Token。

3

Token(int start, int end)

构造一个文本为空,且具有起始和结束偏移量的 Token。

4

构造一个文本为空,且具有起始和结束偏移量以及标志的 Token。

5

构造一个文本为空,且具有起始和结束偏移量以及词元类型的 Token。

6

Token(String text, int start, int end)

使用给定的词元文本和起始/结束偏移量构造一个 Token。

7

Token(String text, int start, int end, int flags)

使用给定的文本、起始/结束偏移量和类型构造一个 Token。

8

Token(String text, int start, int end, String typ)

使用给定的文本、起始/结束偏移量和类型构造一个 Token。

类方法

下表显示了不同的类方法:

序号 方法及描述
1

void clear()

将词元文本、有效负载、标志和位置增量、起始偏移量、结束偏移量以及词元类型重置为默认值。

2

Object clone()

这是一个浅拷贝。

3

Token clone(char[] newTermBuffer, int newTermOffset, int newTermLength, int newStartOffset, int newEndOffset)

创建一个克隆,但在过程中替换词元缓冲区和起始/结束偏移量。

4

void copyTo(AttributeImpl target)

将此属性的值复制到传入的目标属性中。

5

int endOffset()

返回词元的结束偏移量;大于源文本中对应于此词元的最后一个字符的位置。

6

boolean equals(Object obj)

7

int getFlags()

获取已设置的任何位的位集。

8

Payload getPayload()

返回此词元的有效负载。

9

int getPositionIncrement()

返回此词元的位置增量。

10

int getPositionLength()

获取位置长度。

11

int hashCode()

12

void reflectWith(AttributeReflector reflector)

此方法用于属性的自省,它应该简单地将此属性持有的键/值添加到给定的 AttributeReflector 中。

13

Token reinit(char[] newTermBuffer, int newTermOffset, int newTermLength, int newStartOffset, int newEndOffset)

调用 clear()、CharTermAttributeImpl.copyBuffer(char[], int, int)、setStartOffset(int)、setEndOffset(int)、setType(java.lang.String) on Token.DEFAULT_TYPE 的简写。

14

Token reinit(char[] newTermBuffer, int newTermOffset, int newTermLength, int newStartOffset, int newEndOffset, String newType)

调用 clear()、CharTermAttributeImpl.copyBuffer(char[], int, int)、setStartOffset(int)、setEndOffset(int)、setType(java.lang.String) 的简写。

15

Token reinit(String newTerm, int newStartOffset, int newEndOffset)

调用 clear()、CharTermAttributeImpl.append(CharSequence)、setStartOffset(int)、setEndOffset(int)、setType(java.lang.String) on Token.DEFAULT_TYPE 的简写。

16

Token reinit(String newTerm, int newTermOffset, int newTermLength, int newStartOffset, int newEndOffset)

调用 clear()、CharTermAttributeImpl.append(CharSequence, int, int)、setStartOffset(int)、setEndOffset(int)、setType(java.lang.String) on Token.DEFAULT_TYPE 的简写。

17

Token reinit(String newTerm, int newTermOffset, int newTermLength, int newStartOffset, int newEndOffset, String newType)

调用 clear()、CharTermAttributeImpl.append(CharSequence, int, int)、setStartOffset(int)、setEndOffset(int)、setType(java.lang.String) 的简写。

18

Token reinit(String newTerm, int newStartOffset, int newEndOffset, String newType)

调用 clear()、CharTermAttributeImpl.append(CharSequence)、setStartOffset(int)、setEndOffset(int)、setType(java.lang.String) 的简写。

19

void reinit(Token prototype)

将原型词元的字段复制到此词元中。

20

void reinit(Token prototype, char[] newTermBuffer, int offset, int length)

将原型词元的字段复制到此词元中,但使用不同的词元。

21

void reinit(Token prototype, String newTerm)

将原型词元的字段复制到此词元中,但使用不同的词元。

22

void setEndOffset(int offset)

设置结束偏移量。

23

void setFlags(int flags)

24

void setOffset(int startOffset, int endOffset)

设置起始和结束偏移量。

25

void setPayload(Payload payload)

设置此词元的有效负载。

26

void setPositionIncrement(int positionIncrement)

设置位置增量。

27

void setPositionLength(int positionLength)

设置位置长度。

28

void setStartOffset(int offset)

设置起始偏移量。

29

void setType(String type)

设置词法类型。

30

int startOffset()

返回此词元的起始偏移量,即源文本中对应于此词元的第一个字符的位置。

31

String type()

返回此词元的词法类型。

继承的方法

此类继承自以下类的方法:

  • org.apache.lucene.analysis.tokenattributes.TermAttributeImpl
  • org.apache.lucene.analysis.tokenattributes.CharTermAttributeImpl
  • org.apache.lucene.util.AttributeImpl
  • java.lang.Object
lucene_analysis.htm
广告
© . All rights reserved.