UNPKG

1.38 kBTypeScriptView Raw
1/**
2 * 外文字符、数字识别模块
3 *
4 * @author 老雷<leizongmin@gmail.com>
5 */
6import { SubSModuleTokenizer, ISubTokenizerCreate } from '../mod';
7import { Segment, IWord } from '../Segment';
8import { IWordDebugInfo } from '../util/index';
9export declare class ForeignTokenizer extends SubSModuleTokenizer {
10 name: string;
11 /**
12 * 分詞用(包含中文)
13 */
14 _REGEXP_SPLIT_1: RegExp;
15 /**
16 * 分詞用(不包含中文的全詞符合)
17 */
18 _REGEXP_SPLIT_2: RegExp;
19 _cache(): void;
20 /**
21 * 对未识别的单词进行分词
22 *
23 * @param {array} words 单词数组
24 * @return {array}
25 */
26 split(words: IWord[]): IWord[];
27 /**
28 * 支援更多外文判定(但可能會降低效率)
29 *
30 * 並且避免誤切割 例如 latīna Русский
31 */
32 splitForeign2(text: string, cur?: number): IWord[];
33 /**
34 * 匹配包含的英文字符和数字,并分割
35 *
36 * @param {string} text 文本
37 * @param {int} cur 开始位置
38 * @return {array} 返回格式 {w: '单词', c: 开始位置}
39 */
40 splitForeign(text: string, cur?: number): IWord[];
41 createForeignToken(word: IWord, lasttype?: number, attr?: IWordDebugInfo): Segment.IWord;
42}
43export declare const init: ISubTokenizerCreate<ForeignTokenizer, SubSModuleTokenizer>;
44export default ForeignTokenizer;