当前位置: 首页 > 软件库 > 程序开发 > 中文分词库 >

nodejieba

"结巴"分词的Node.js版本
授权协议 MIT
开发语言 JavaScript
所属分类 程序开发、 中文分词库
软件类型 开源软件
地区 国产
投 递 者 陈项禹
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

NodeJieba "结巴"分词的Node.js版本

Introduction

NodeJieba只是CppJieba简单包装而成的node扩展,用来进行中文分词。

详见NodeJiebaBlog

Install

npm install nodejieba

因为npm速度很慢而且经常因为墙的原因出现莫名其妙的问题,在此强烈建议使用cnpm,命令如下:

npm --registry=http://r.cnpmjs.org install nodejieba

Usage

默认分词算法

初始化

var segment = require("nodejieba");
segment.loadDict("./node_modules/nodejieba/dict/jieba.dict.utf8", "./node_modules/nodejieba/dict/hmm_model.utf8");

阻塞式调用

var wordList = segment.cutSync("阻塞模式分词"); if (wordList.constructor == Array) // just for tutorial, this is always be true  {
    wordList.forEach(function(word) { console.log(word);     
    });
}

非阻塞式调用

segment.cut("非阻塞模式分词", function(wordList) {
    wordList.forEach(function(word) { console.log(word);     
    });
});

搜索引擎分词算法

初始化

var segment = require("nodejieba");
segment.queryLoadDict("./node_modules/nodejieba/dict/jieba.dict.utf8", "./node_modules/nodejieba/dict/hmm_model.utf8");

阻塞式调用

var wordList = segment.queryCutSync("阻塞模式分词"); if (wordList.constructor == Array) // just for tutorial, this is always be true  {
    wordList.forEach(function(word) { console.log(word);     
    });
}

非阻塞式调用

segment.queryCut("非阻塞模式分词", function(wordList) {
    wordList.forEach(function(word) { console.log(word);     
    });
});

具体用法可以参考 test/segment.js test/query_segment.js

Testing

在node v0.10.2下测试通过

Demo

http://cppjieba-webdemo.herokuapp.com/ (chrome is suggested)

Thanks

Jieba中文分词

  • 一、环境配置(centOS) $ yum install gcc gcc-c++ -y $ yum install wget -y $ wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.30.1/install.sh | bash $ source ./root/.bashrc $ nvm install v8.9.4 $

  • 打开 github上的nodejieba项目,查看nodejieba的使用方法。 使用以下命令安装nodejieba npm install nodejieba 由于nodejieba的底层算法实现是C++,所以需要安装node-gyp来编译原生C++扩展模块。 npm install -g node-gyp 而node-gyp需要依赖环境,因此需要进行环境配置,在window系统上的配置方法有两

  • 今天在进行依赖安装的的时候,出现了一个nodejieba的报错,报错信息如下 node-pre-gyp WARN Using request for node-pre-gyp https download node-pre-gyp WARN Tried to download(404): https://github.com/yanyiwu/nodejieba/releases/download

  • 导语:最近想分析一下自己在学校论坛bt的下载行为,又想耍帅,所以准备整个词云。而词云的数据来源必然是下载种子的名称、类型等。所以不可避免要针对所有下载种子做关键词检索,因此需要用到中文分词工具。因为我利用nodejs,所以在网上查找了很多资料,发现nodejie是个不错的选择。好吧,说实话主要是看了月影大大的使用 Node.js 对文本内容分词和关键词抽取这篇文章做出的选择。 nodejieba的

  • 问题描述 在一个项目进行npm install时,一直报错,提示 nodejieba.vcxproj(20,3): error MSB4019: 未找到导入 的项目“C :\Microsoft.Cpp.Default.props” 复制代码 试了网上常见的方法都没有成功。最后做了尝试终于可以成功npm install了。 解决方法 以管理员身份运行CMD,输入以下命令安装即可。 npm --vs2

  • var nodejieba = require("nodejieba"); console.log(nodejieba.extract("升职加薪,当上CEO,走上人生巅峰。", 4)); // [ 'CEO:11.7392', '升职:10.8562', '加薪:10.6426', '巅峰:9.49396' ] node分词 转载于:https://www.cnblogs.com/cina33

  • 问题 在 Ubuntu 安装 nodejieba,不断报错。因为之前在 Mac 环境安装时遇到过类似问题,当时是因为 node 版本造成的。遂随着当前思路找下去了。 解决 首先更换了 node 版本为 v12.18.3 ,当然这个不是直接原因。 主要还是因为装 nodejieba 缺少了预编译的环境。 主要要装这个包,然后装它需要的一些环境。 https://github.com/nodejs/n

  • 三条命令就OK 其中出了很多岔子,由于翻墙啥的出的错也不想说了,能用就行   npm install --global --production windows-build-tools npm install -g node-gyp npm --registry=http://r.cnpmjs.org install nodejieba  

 相关资料
  • 双非本科,参加了无数场面试,以下是最近面阿里的总结: 阿里 面经1 简单介绍项目 知道哪些数据结构以及他们的特点 链表增删快,那如何提高其查询效率,有没有什么想法? B+树了解吗?B+树如何范围查询?B+树退化的极端情况是什么? 跳表了解吗? 大顶堆、小顶堆了解吗? 实现长地址请求到服务端,然后服务端重定向短地址给客户端,如何实现长短地址的互相映射? 那我现在有10份数据,有1000个线程来争抢,

  • 本文向大家介绍使用 Node.js 对文本内容分词和关键词抽取,包括了使用 Node.js 对文本内容分词和关键词抽取的使用技巧和注意事项,需要的朋友参考一下 在讨论技术前先卖个萌,吃货的世界你不懂~~ 众成翻译的文章有 tag,用户可以基于 tag 来快速筛选感兴趣的文章,文章也可以依照 tag 关联来进行相关推荐。但是现在众成翻译的 tag 是在推荐文章的时候设置的,都是英文的,而且人工设置难

  • 项目简介 这是一个个人博客小程序版,使用 Mpvue 编写而成,服务端使用的是Bmob后端云,无需开发服务端接口即可使用,快速便捷,适合个人使用,功能包括签到,收藏文章,查看文章,消息通知,评论文章,回复评论等。欢迎提建议和意见。 效果图 小程序二维码 安装教程 源码地址: 1.克隆源代码 git clone git@github.com:kesixin/MP_Mamba_Blog.git或git

  • 我们有一个具有以下配置的elasticsearch索引: 结果按字段“number”进行分组,并以这种方式返回每个数字的最佳匹配。但我需要的是一个自定义的评分/排序的结果的基础上的词在结果的顺序的正确性。所以对于“乔治·布什”的质疑,“乔治·布什”应该总是比“布什·乔治”得分更高。匹配短语搜索不适合我,因为我在搜索中使用模糊性。

  • Swift 的词汇结构描述了怎样的语言字符序列才能形成有效标记。这些有效标记来自底层的语言构建块,用来描述随后章节里的其它语言。一个标记由标识符,关键字,标点符号,文字或者运算符组成。 在大部分情况下,标记是通过输入文本中最长可能输入的子句来从 Swift 源文件的特征中生成。这种行为参考自最长匹配或者最大匹配。 空白和注释 空白有两个用处:在源文件中分隔标记以及帮助决定运算符是前缀还是后缀(参见

  • 本页包含内容: 空白与注释(Whitespace and Comments) 标识符(Identifiers) 关键字(Keywords) 字面量(Literals) 运算符(Operators) Swift 的“词法结构(lexical structure)”描述了如何在该语言中用字符序列构建合法标记,组成该语言中最底层的代码块,并在之后的章节中用于描述语言的其他部分。 通常,标记在随后介绍的语