UNPKG

1.46 kBJavaScriptView Raw
1'use strict';
2Object.defineProperty(exports, "__esModule", { value: true });
3exports.init = exports.ZhRadicalTokenizer = void 0;
4const mod_1 = require("../mod");
5/**
6 * 此模組目前無任何用處與效果
7 *
8 * @todo 部首
9 */
10class ZhRadicalTokenizer extends mod_1.SubSModuleTokenizer {
11 constructor() {
12 super(...arguments);
13 this.name = 'ZhRadicalTokenizer';
14 }
15 _cache(...argv) {
16 super._cache(...argv);
17 }
18 split(words) {
19 return this._splitUnset(words, this.splitZhRadical);
20 }
21 splitZhRadical(text, cur) {
22 let ret = [];
23 let self = this;
24 let _r = /[\u4136\u4137]/u;
25 if (!_r.test(text)) {
26 return null;
27 }
28 text
29 .split(/([\u4136\u4137]+)/u)
30 .forEach(function (w, i) {
31 if (w !== '') {
32 if (_r.test(w)) {
33 ret.push(self.debugToken({
34 w,
35 }, {
36 [self.name]: true,
37 }, true));
38 }
39 else {
40 ret.push({
41 w,
42 });
43 }
44 }
45 });
46 return ret.length ? ret : null;
47 }
48}
49exports.ZhRadicalTokenizer = ZhRadicalTokenizer;
50exports.init = ZhRadicalTokenizer.init.bind(ZhRadicalTokenizer);
51exports.default = ZhRadicalTokenizer;
52//# sourceMappingURL=ZhRadicalTokenizer.js.map
\No newline at end of file