一个简单快速的词库,用来从一段文本中找出存在于词库的词语。
Switch branches/tags
Nothing to show
Clone or download
Latest commit f17acb1 Oct 29, 2014
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
README.md 更新 README.md Jul 2, 2014
SimpleDict.php Update SimpleDict.php Oct 29, 2014

README.md

SimpleDict

这是一个简单快速的词库工具,用来从一段文本中找出存在于词库的词语。

特点

  • 简单:纯 PHP 实现,无需安装扩展。
  • 快速:查找耗时跟词库大小关系不大(我的小破本上查询 40 万的词库轻轻松松),不会一次性加载整个词库,使用时内存占用小(就是生成词库的时候有点费内存)。

使用方法

准备文本格式的词库

首先准备一个文本文件,每个词占一行。格式:

词语<tab>值

生成 SimpleDict 专用词库

SimpleDict::make("text_file_path", "output_dict_path");

搜索

$dict = new SimpleDict("dict_path");
$result = $dict->search("some text here...");

/* $result 的格式:
array(
  'word1' => array('value' => 'value1', 'count' => 'count1'),
  ...
)*/

替换

// 简单替换
$replaced = $dict->replace("some text here...", "**");
// 高级替换
$replaced = $dict->replace("some text here...", function($word, $value) {
  return "[$word -> $value]";
});