segment 一个nodejs分词模块

2016-11-22 11:26:45

1、使用方法

安装:

$ npm install segment --save

使用方法:

// 载入模块

var Segment = require('segment');
var text="这是一个非常不错的nodejs网站 niefengjun.cn" ;

// 创建实例

var segment = new Segment();
// 使用默认的识别模块及字典,载入字典文件需要1秒,仅初始化时执行一次即可
segment.useDefault();
// 开始分词
console.log(segment.doSegment(text);

返回结果格式:

bogon:test tom$ node segment.js

[ { w: '这是', p: 0 },
{ w: '一个', p: 2097152 },
{ w: '非常', p: 134217728 },
{ w: '不错', p: 4096 },
{ w: '的', p: 8192 },
{ w: 'nodejs', p: 8 },
{ w: '网站', p: 1048576 },
{ w: 'niefengjun', p: 16 },
{ w: '.', p: 2048 },
{ w: 'cn', p: 16 } ]

不返回词性

var result = segment.doSegment(text, {
simple: true
});

返回结果

[ '这是', '一个', '非常', '不错', '的', 'nodejs', '网站', 'niefengjun', '.', 'cn' ]

去除标点符号

var result = segment.doSegment(text, {
stripPunctuation: true
});

返回结果

[ { w: '这是', p: 0 },
{ w: '一个', p: 2097152 },
{ w: '非常', p: 134217728 },
{ w: '不错', p: 4096 },
{ w: '的', p: 8192 },
{ w: 'nodejs', p: 8 },
{ w: '网站', p: 1048576 },
{ w: 'niefengjun', p: 16 },
{ w: 'cn', p: 16 } ]

注意

请勿用此模块来对较长且无任何标点符号的文本进行分词,否则会导致分词时间成倍增加。


你打算打赏多少钱呢?

打赏
(微信扫一扫)