UNPKG

9.48 kBJavaScriptView Raw
1'use strict';
2Object.defineProperty(exports, "__esModule", { value: true });
3exports.POSTAG = void 0;
4const core_1 = require("./util/core");
5/**
6 * 单词类型
7 */
8var POSTAG;
9(function (POSTAG) {
10 /**
11 * 錯字
12 */
13 POSTAG[POSTAG["BAD"] = 2147483648] = "BAD";
14 /**
15 * 形容词 形语素
16 */
17 POSTAG[POSTAG["D_A"] = 1073741824] = "D_A";
18 /**
19 * 区别词 区别语素
20 */
21 POSTAG[POSTAG["D_B"] = 536870912] = "D_B";
22 /**
23 * 连词 连语素
24 */
25 POSTAG[POSTAG["D_C"] = 268435456] = "D_C";
26 // ---
27 /**
28 * 副词 副语素
29 */
30 POSTAG[POSTAG["D_D"] = 134217728] = "D_D";
31 /**
32 * 叹词 叹语素
33 */
34 POSTAG[POSTAG["D_E"] = 67108864] = "D_E";
35 /**
36 * 方位词 方位语素
37 */
38 POSTAG[POSTAG["D_F"] = 33554432] = "D_F";
39 /**
40 * 成语
41 */
42 POSTAG[POSTAG["D_I"] = 16777216] = "D_I";
43 // ---
44 /**
45 * 习语
46 * 類似成語或者曖昧無法分明的用語
47 */
48 POSTAG[POSTAG["D_L"] = 8388608] = "D_L";
49 /**
50 * 数词 数语素
51 * 可以與其他數詞或者量詞合併的詞
52 */
53 POSTAG[POSTAG["A_M"] = 4194304] = "A_M";
54 /**
55 * 数量词
56 */
57 POSTAG[POSTAG["D_MQ"] = 2097152] = "D_MQ";
58 /**
59 * 名词 名语素
60 */
61 POSTAG[POSTAG["D_N"] = 1048576] = "D_N";
62 // ---
63 /**
64 * 拟声词
65 */
66 POSTAG[POSTAG["D_O"] = 524288] = "D_O";
67 /**
68 * 介词
69 */
70 POSTAG[POSTAG["D_P"] = 262144] = "D_P";
71 /**
72 * 量词 量语素
73 * 可以與數詞合併的詞
74 */
75 POSTAG[POSTAG["A_Q"] = 131072] = "A_Q";
76 /**
77 * 代词 代语素
78 */
79 POSTAG[POSTAG["D_R"] = 65536] = "D_R";
80 // ---
81 /**
82 * 处所词
83 */
84 POSTAG[POSTAG["D_S"] = 32768] = "D_S";
85 /**
86 * 时间词
87 */
88 POSTAG[POSTAG["D_T"] = 16384] = "D_T";
89 /**
90 * 助词 助语素
91 */
92 POSTAG[POSTAG["D_U"] = 8192] = "D_U";
93 /**
94 * 动词 动语素
95 */
96 POSTAG[POSTAG["D_V"] = 4096] = "D_V";
97 // ---
98 /**
99 * 标点符号
100 */
101 POSTAG[POSTAG["D_W"] = 2048] = "D_W";
102 /**
103 * 非语素字
104 */
105 POSTAG[POSTAG["D_X"] = 1024] = "D_X";
106 /**
107 * 语气词 语气语素
108 */
109 POSTAG[POSTAG["D_Y"] = 512] = "D_Y";
110 /**
111 * 状态词
112 */
113 POSTAG[POSTAG["D_Z"] = 256] = "D_Z";
114 // ---
115 /**
116 * 人名
117 */
118 POSTAG[POSTAG["A_NR"] = 128] = "A_NR";
119 /**
120 * 地名
121 */
122 POSTAG[POSTAG["A_NS"] = 64] = "A_NS";
123 /**
124 * 机构团体
125 */
126 POSTAG[POSTAG["A_NT"] = 32] = "A_NT";
127 /**
128 * 外文字符
129 */
130 POSTAG[POSTAG["A_NX"] = 16] = "A_NX";
131 // ---
132 /**
133 * 其他专名
134 */
135 POSTAG[POSTAG["A_NZ"] = 8] = "A_NZ";
136 /**
137 * 前接成分
138 */
139 POSTAG[POSTAG["D_ZH"] = 4] = "D_ZH";
140 /**
141 * 后接成分
142 */
143 POSTAG[POSTAG["D_K"] = 2] = "D_K";
144 /**
145 * 网址、邮箱地址
146 */
147 POSTAG[POSTAG["URL"] = 1] = "URL";
148 /**
149 * 未知词性
150 */
151 POSTAG[POSTAG["UNK"] = 0] = "UNK";
152})(POSTAG = exports.POSTAG || (exports.POSTAG = {}));
153(function (POSTAG) {
154 POSTAG.POSTAG_KEYS = core_1.enumList(POSTAG);
155 /**
156 * 中文说明
157 */
158 let CHSNAME;
159 (function (CHSNAME) {
160 CHSNAME["BAD"] = "\u932F\u5B57";
161 CHSNAME["D_A"] = "\u5F62\u5BB9\u8BCD \u5F62\u8BED\u7D20";
162 CHSNAME["D_B"] = "\u533A\u522B\u8BCD \u533A\u522B\u8BED\u7D20";
163 CHSNAME["D_C"] = "\u8FDE\u8BCD \u8FDE\u8BED\u7D20";
164 CHSNAME["D_D"] = "\u526F\u8BCD \u526F\u8BED\u7D20";
165 CHSNAME["D_E"] = "\u53F9\u8BCD \u53F9\u8BED\u7D20";
166 CHSNAME["D_F"] = "\u65B9\u4F4D\u8BCD \u65B9\u4F4D\u8BED\u7D20";
167 CHSNAME["D_I"] = "\u6210\u8BED";
168 CHSNAME["D_L"] = "\u4E60\u8BED";
169 CHSNAME["A_M"] = "\u6570\u8BCD \u6570\u8BED\u7D20";
170 CHSNAME["D_MQ"] = "\u6570\u91CF\u8BCD";
171 CHSNAME["D_N"] = "\u540D\u8BCD \u540D\u8BED\u7D20";
172 CHSNAME["D_O"] = "\u62DF\u58F0\u8BCD";
173 CHSNAME["D_P"] = "\u4ECB\u8BCD";
174 CHSNAME["A_Q"] = "\u91CF\u8BCD \u91CF\u8BED\u7D20";
175 CHSNAME["D_R"] = "\u4EE3\u8BCD \u4EE3\u8BED\u7D20";
176 CHSNAME["D_S"] = "\u5904\u6240\u8BCD";
177 CHSNAME["D_T"] = "\u65F6\u95F4\u8BCD";
178 CHSNAME["D_U"] = "\u52A9\u8BCD \u52A9\u8BED\u7D20";
179 CHSNAME["D_V"] = "\u52A8\u8BCD \u52A8\u8BED\u7D20";
180 CHSNAME["D_W"] = "\u6807\u70B9\u7B26\u53F7";
181 CHSNAME["D_X"] = "\u975E\u8BED\u7D20\u5B57";
182 CHSNAME["D_Y"] = "\u8BED\u6C14\u8BCD \u8BED\u6C14\u8BED\u7D20";
183 CHSNAME["D_Z"] = "\u72B6\u6001\u8BCD";
184 CHSNAME["A_NR"] = "\u4EBA\u540D";
185 CHSNAME["A_NS"] = "\u5730\u540D";
186 CHSNAME["A_NT"] = "\u673A\u6784\u56E2\u4F53";
187 CHSNAME["A_NX"] = "\u5916\u6587\u5B57\u7B26";
188 CHSNAME["A_NZ"] = "\u5176\u4ED6\u4E13\u540D";
189 CHSNAME["D_ZH"] = "\u524D\u63A5\u6210\u5206";
190 CHSNAME["D_K"] = "\u540E\u63A5\u6210\u5206";
191 CHSNAME["URL"] = "\u7F51\u5740 \u90AE\u7BB1\u5730\u5740";
192 CHSNAME["UNK"] = "\u672A\u77E5";
193 })(CHSNAME = POSTAG.CHSNAME || (POSTAG.CHSNAME = {}));
194 /**
195 * 繁體中文说明
196 */
197 let ZHNAME;
198 (function (ZHNAME) {
199 ZHNAME["BAD"] = "\u932F\u5B57";
200 ZHNAME["D_A"] = "\u5F62\u5BB9\u8A5E \u5F62\u8A9E\u7D20";
201 ZHNAME["D_B"] = "\u5340\u5225\u8A5E \u5340\u5225\u8A9E\u7D20";
202 ZHNAME["D_C"] = "\u9023\u8A5E \u9023\u8A9E\u7D20";
203 ZHNAME["D_D"] = "\u526F\u8A5E \u526F\u8A9E\u7D20";
204 ZHNAME["D_E"] = "\u5606\u8A5E \u5606\u8A9E\u7D20";
205 ZHNAME["D_F"] = "\u65B9\u4F4D\u8A5E \u65B9\u4F4D\u8A9E\u7D20";
206 ZHNAME["D_I"] = "\u6210\u8A9E";
207 ZHNAME["D_L"] = "\u7FD2\u8A9E";
208 ZHNAME["A_M"] = "\u6578\u8A5E \u6578\u8A9E\u7D20";
209 ZHNAME["D_MQ"] = "\u6578\u91CF\u8A5E";
210 ZHNAME["D_N"] = "\u540D\u8A5E \u540D\u8A9E\u7D20";
211 ZHNAME["D_O"] = "\u64EC\u8072\u8A5E";
212 ZHNAME["D_P"] = "\u4ECB\u8A5E";
213 ZHNAME["A_Q"] = "\u91CF\u8A5E \u91CF\u8A9E\u7D20";
214 ZHNAME["D_R"] = "\u4EE3\u8A5E \u4EE3\u8A9E\u7D20";
215 ZHNAME["D_S"] = "\u8655\u6240\u8A5E";
216 ZHNAME["D_T"] = "\u6642\u9593\u8A5E";
217 ZHNAME["D_U"] = "\u52A9\u8A5E \u52A9\u8A9E\u7D20";
218 ZHNAME["D_V"] = "\u52D5\u8A5E \u52D5\u8A9E\u7D20";
219 ZHNAME["D_W"] = "\u6A19\u9EDE\u7B26\u865F";
220 ZHNAME["D_X"] = "\u975E\u8A9E\u7D20\u5B57";
221 ZHNAME["D_Y"] = "\u8A9E\u6C23\u8A5E \u8A9E\u6C23\u8A9E\u7D20";
222 ZHNAME["D_Z"] = "\u72C0\u614B\u8A5E";
223 ZHNAME["A_NR"] = "\u4EBA\u540D";
224 ZHNAME["A_NS"] = "\u5730\u540D";
225 ZHNAME["A_NT"] = "\u6A5F\u69CB\u5718\u9AD4";
226 ZHNAME["A_NX"] = "\u5916\u6587\u5B57\u7B26";
227 ZHNAME["A_NZ"] = "\u5176\u4ED6\u5C08\u540D";
228 ZHNAME["D_ZH"] = "\u524D\u63A5\u6210\u5206";
229 ZHNAME["D_K"] = "\u5F8C\u63A5\u6210\u5206";
230 ZHNAME["URL"] = "\u7DB2\u5740 \u90F5\u7BB1\u5730\u5740";
231 ZHNAME["UNK"] = "\u672A\u77E5";
232 })(ZHNAME = POSTAG.ZHNAME || (POSTAG.ZHNAME = {}));
233 /**
234 * 英文
235 */
236 let ENNAME;
237 (function (ENNAME) {
238 ENNAME["D_A"] = "a";
239 ENNAME["D_B"] = "b";
240 ENNAME["D_C"] = "c";
241 ENNAME["D_D"] = "d";
242 ENNAME["D_E"] = "e";
243 ENNAME["D_F"] = "f";
244 ENNAME["D_I"] = "i";
245 ENNAME["D_L"] = "l";
246 ENNAME["A_M"] = "m";
247 ENNAME["D_MQ"] = "mq";
248 ENNAME["D_N"] = "n";
249 ENNAME["D_O"] = "o";
250 ENNAME["D_P"] = "p";
251 ENNAME["A_Q"] = "q";
252 ENNAME["D_R"] = "r";
253 ENNAME["D_S"] = "s";
254 ENNAME["D_T"] = "t";
255 ENNAME["D_U"] = "u";
256 ENNAME["D_V"] = "v";
257 ENNAME["D_W"] = "w";
258 ENNAME["D_X"] = "x";
259 ENNAME["D_Y"] = "y";
260 ENNAME["D_Z"] = "z";
261 ENNAME["A_NR"] = "nr";
262 ENNAME["A_NS"] = "ns";
263 ENNAME["A_NT"] = "nt";
264 ENNAME["A_NX"] = "nx";
265 ENNAME["A_NZ"] = "nz";
266 ENNAME["D_ZH"] = "h";
267 ENNAME["D_K"] = "k";
268 ENNAME["URL"] = "uri";
269 ENNAME["UNK"] = "un";
270 })(ENNAME = POSTAG.ENNAME || (POSTAG.ENNAME = {}));
271 POSTAG.POSTAG_KEYS.forEach(function (key) {
272 let lc = key.toLowerCase();
273 POSTAG[lc] = POSTAG[key];
274 CHSNAME[lc] = CHSNAME[key];
275 ZHNAME[lc] = ZHNAME[key];
276 ENNAME[lc] = ENNAME[key];
277 });
278 POSTAG.enName = getPOSTagTranslator(POSTAG, ENNAME);
279 POSTAG.chsName = getPOSTagTranslator(POSTAG, CHSNAME);
280 POSTAG.zhName = getPOSTagTranslator(POSTAG, ZHNAME);
281 function getPOSTagTranslator(POSTagDict, I18NDict) {
282 return (p) => {
283 if (core_1.enumIsNaN(p)) {
284 return I18NDict[p] || I18NDict.UNK;
285 }
286 if (typeof p == 'string') {
287 p = Number(p);
288 }
289 let ret = POSTAG.POSTAG_KEYS.reduce(function (ret, i) {
290 if ((p & POSTAG[i]))
291 //if ((<number>p & <number>POSTAG[i]) > 0)
292 {
293 ret.push(I18NDict[i] || i);
294 }
295 return ret;
296 }, []);
297 if (ret.length < 1) {
298 return I18NDict.UNK;
299 }
300 else {
301 return ret.toString();
302 }
303 };
304 }
305 POSTAG.getPOSTagTranslator = getPOSTagTranslator;
306})(POSTAG = exports.POSTAG || (exports.POSTAG = {}));
307//console.log(POSTAG);
308//console.log(POSTAG.chsName(0x00000008 | 0x00000010));
309exports.default = POSTAG;
310//# sourceMappingURL=POSTAG.js.map
\No newline at end of file