diff options
author | siikamiika <siikamiika@users.noreply.github.com> | 2020-04-17 01:32:01 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-04-17 01:32:01 +0300 |
commit | 8c16a6e580bfdd70e27df1816ca90807062cf9b5 (patch) | |
tree | 25f551dfaa68427cd873fbd822abf0f2bfe09b76 /ext/bg/js/mecab.js | |
parent | e6053eefa594524c7adcec4986a5a2c499adf192 (diff) | |
parent | 619df42aedaa8da97d0a16d539b7211349143a0a (diff) |
Merge pull request #456 from siikamiika/parse-text-refactor
Parse text refactor
Diffstat (limited to 'ext/bg/js/mecab.js')
-rw-r--r-- | ext/bg/js/mecab.js | 31 |
1 files changed, 30 insertions, 1 deletions
diff --git a/ext/bg/js/mecab.js b/ext/bg/js/mecab.js index cd6e6c57..597dceae 100644 --- a/ext/bg/js/mecab.js +++ b/ext/bg/js/mecab.js @@ -40,7 +40,36 @@ class Mecab { } async parseText(text) { - return await this.invoke('parse_text', {text}); + const rawResults = await this.invoke('parse_text', {text}); + // { + // 'mecab-name': [ + // // line1 + // [ + // {str expression: 'expression', str reading: 'reading', str source: 'source'}, + // {str expression: 'expression2', str reading: 'reading2', str source: 'source2'} + // ], + // line2, + // ... + // ], + // 'mecab-name2': [...] + // } + const results = {}; + for (const [mecabName, parsedLines] of Object.entries(rawResults)) { + const result = []; + for (const parsedLine of parsedLines) { + const line = []; + for (const {expression, reading, source} of parsedLine) { + line.push({ + expression: expression || '', + reading: reading || '', + source: source || '' + }); + } + result.push(line); + } + results[mecabName] = result; + } + return results; } startListener() { |