TOKENS2
接口/方法功能
TOKENS2支持四种不同的重载,详见下文。
接口/方法声明
重载形式一
PROCEDURE TOKENS2(INDEX_NAME IN VARCHAR2, TEXTKEY IN VARCHAR2, RESTAB IN OUT TOKEN_TAB);
重载形式二
PROCEDURE TOKENS2(INDEX_NAME IN VARCHAR2, TEXTKEY IN VARCHAR2, RESTAB IN VARCHAR2, QUERY_ID IN NUMBER DEFAULT 0);
重载形式三
PROCEDURE TOKENS2(CONTENT VARCHAR2, RESTAB IN OUT TOKEN_TAB)
重载形式四
PROCEDURE TOKENS2(CONTENT CLOB, RESTAB IN OUT TOKEN_TAB)
参数说明
重载形式一
参数名称 参数类型 参数解释 默认值 INDEX_NAME VARCHAR2 - 无 TEXTKEY VARCHAR2 - 无 RESTAB TOKEN_TAB - 无 重载形式二
参数名称 参数类型 参数解释 默认值 INDEX_NAME VARCHAR2 - 无 TEXTKEY VARCHAR2 - 无 RESTAB TOKEN_TAB - 无 QUERY_ID NUMBER - 0 重载形式三
参数名称 参数类型 参数解释 默认值 CONTENT VARCHAR2 - 无 RESTAB TOKEN_TAB - 无 重载形式四
参数名称 参数类型 参数解释 默认值 CONTENT CLOB - 无 RESTAB TOKEN_TAB - 无
操作示例
文章破词的使用方法如下所述:首先给定一个词库,命名为STD_VOC.txt,这个文件放在安装目录下的XVOC文件夹下面。登录系统库执行下面两条命令,完成词库的编译和加载。
recompile vocable table 'STD_VOC' ;
load vocable table 'STD_VOC' ;
示例如下:
DECLARE
TYPE TOKEN_REC IS RECORD(TOKEN VARCHAR(64),OFFSET INTEGER,LENGTH INTEGER);
TYPE TOKEN_TAB IS TABLE OF TOKEN_REC;
WORD_TAB TOKEN_TAB;
BEGIN
CTX_DOC.SET_SPLIT_POLICY(CTX_DOC.SP_MAX_LEN + CTX_DOC.SP_ASCII + CTX_DOC.SP_DIGIT);
CTX_DOC.TOKENS2('LOCK 梆子李白佛教梵蒂冈中华人民早好上教参子发梵蒂冈李小龙爱情牛角尖中华人民好人一生平安牛角尖2232',WORD_TAB);
FOR i IN 1 .. WORD_TAB.COUNT LOOP
SEND_MSG(WORD_TAB(i).TOKEN || ' OFFSET = ' || WORD_TAB(i).OFFSET || ' LEN='||WORD_TAB(i).LENGTH);
END LOOP;
END;