问题标签 [kuromoji]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
33 浏览

java - 在使用 Apache Lucene 7.1.0 的 JapaneseTokenizer 时遇到 NoClassDefFoundError

我正在尝试使用来自 Apache Lucene 7.1.0 的 JapaneseTokenizer。它给了我java.lang.NoClassDefFoundError: org/apache/lucene/analysis/ja/JapaneseTokenizerjava.lang.ClassNotFoundException: org.apache.lucene.analysis.ja.JapaneseTokenizer。虽然,来自 Lucene 的所有其他分析器和标记器(如 StandardAnalyzer 等)都可以正常工作。如何解决?

0 投票
1 回答
113 浏览

lucene - 我想在 Apache Ignite 中使用日语全文搜索

https://github.com/apache/ignite/blob/2fbbb676386515ea881e4e61f08864d6bc93225a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridLuceneIndex.java#L115

看起来现在正在使用标准分析器。未来有没有计划允许在配置文件中切换 Lucene 分析器?

谢谢。

0 投票
0 回答
197 浏览

elasticsearch - 努力理解 Elasticsearch Kuromoji 标记器中的用户字典格式

我想为日语使用 Elasticsearch Kuromoji 插件。但是,我很难理解分词器中文件的 user_dictionary 格式。它在弹性文档https://www.elastic.co/guide/en/elasticsearch/plugins/current/analysis-kuromoji-tokenizer.html中解释为以下形式的 CSV:

Kuromoji 分词器默认使用 MeCab-IPADIC 字典。user_dictionary 可以附加到默认字典。字典应具有以下 CSV 格式:

<text>,<token 1> ... <token n>,<reading 1> ... <reading n>,<part-of-speech tag> 因此,文档中没有太多关于此的内容。

查看文档显示的示例条目时,它可能如下所示: 東京スカイツリー,東京 スカイツリー,トウキョウ スカイツリー,カスタム名詞 因此,将其分解,第一个元素是字典文本:

  1. 東京スカイツリー- 东京天空树
  2. 東京 スカイツリー- 是东京天空树 - 我假设这里的空间是表示令牌,但想知道为什么只有“东京”是一个单独的令牌,而天空树没有分成“天空”“树”?
  3. トウキョウ スカイツリー- 然后我们有一个阅读表格。再一次,“东京”“天空树”——再一次,为什么它会这样分裂。能否指定此栏文字的一种以上阅读形式(当然有的话)
  4. 最后是词性,这是我不明白的一点。カスタム名詞意思是“自定义名词”。我假设我可以定义词性,例如动词,名词等。但是规则是什么,它应该遵循词性名称的某种格式。我看到了将其指定为“名词”的示例 - 名詞。但在这个例子中是自定义名词。

任何人都有一些想法,特别是围绕词性字段的材料 - 例如可用值是什么。此外,这个领域对整体分词器功能有什么影响?

谢谢

0 投票
1 回答
66 浏览

javascript - 如何按循环中传递给promise的数据顺序返回值?

为了了解 fetch、promise 和其他 js 内容,我正在尝试编写一个小脚本,该脚本建议从给定的日语文本中学习单词(基于其难度)。

它使用一个名为Kuromojin的日本解析器。

像 Kuromojin 这样的解析器所做的是将短语标记为单词。

例如数据:“日本语が上手ですね!” → 标记词:[{surface_form: 日本语}, {surface_form: が}, {surface_form: 上手}, {surface_form: です}, {surface_form: ね}, {surface_form: !}]

该脚本首先对数据中的单词进行标记,然后使用日语字典的 API (jisho.org) 获取每个标记的单词对应的 JLPT 级别

app.js 文件:

parseintojisho.js 文件:

该脚本有效,但不是按顺序显示与每个标记化单词对应的 JLPT 级别,而是随机显示。我猜无论哪个对应的数据首先被解析,都会出现在控制台日志中?

我发现这Promise.All() 可能会解决我的问题,但我找不到正确实施它的方法。

有没有办法将获取的 JLPT 级别按照传入的标记化项目的顺序排列parseIntoJisho(item);

0 投票
1 回答
48 浏览

javascript - 如何在 Javascript 中使用 Kuromoji.js

我最近从这里安装了一个带有 Bower 的软件包:https ://github.com/takuyaa/kuromoji.js/

看了github上的安装,我基本上是从指南里复制粘贴的:

但是,我不知道“kuromoji”应该指什么。这是明显的错误:

这是我的目录树的屏幕截图:

在此处输入图像描述

不知道如何正确使用它。