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.