...词 $so = scws_new(); $so->set_charset('utf8'); // 这里没有调用 set_dict 和 set_rule 系统会自动试调用 ini 中指定路径下的词典和规则文件 $so->add_dict(ini_get("scws.default.fpath") . '/dict.utf8.xdb'); $so->add_dict("/usr/myapp/dict_extra.txt",SCWS_XDICT_TXT); $so-...
如果你能长时间用 $scws 对象那就可以一次加载,多次使用。如果每次在不同的脚本中 set_dict 那肯定是每次都加载啊。
...词库的情况下才自动加载默认词库,只要你曾经add_dict,或set_dict那么就不会加载默认词库了。这并不算BUG吧。 这是给懒人设定的规则,当你试图设置词典时那就完全交给你决定,而不是系统强制无论如何都先加载默认词典。
应该是分词词典没有正确加载。 如果你在php.ini中没有正确指定路径的话scws.default.fpath以及字符集 scws.default.charset 你应该在分词代码中明确指定这些 $s->add_dict(); 或 $scws->set_dict(); 还有 $scws->set_charset() 应该在此之前调用
[quote='hightman' pid='7092' dateline='1319384262'] 如果你还需要原来的词典,请在 add_dict 前加 set_dict(ini_get('scws.default.fpath').'/dict.utf8.xdb'); [/quote] 是的。这没问题了。是那txt编码问题。不是utf8的话就不行的。 scws我是用utf8。
... , 番茄汤(分词OK) 可是结果什么都没显示。 $so->set_dict("d:\test.xdb", "SCWS_XDICT_XDB") 的调用也正常。 不知道哪里出了问题?
ubuntu下,我把scws装成php的扩展, php调用时, $so->set_dict(ini_get("scws.default.fpath")."/dict.utf8.xdb",SCWS_XDICT_MEM); 如果去掉SCWS_XDICT_MEM,则分割同样的字符串时间增加, 请教这种模式的原理, apache 以loadmodule跑php,一次页面执行完毕后...
看了论坛的一些资料,重新进行配置如下$cws->set_dict(ini_get('scws.default.fpath') . '/a.txt' , SCWS_XDICT_TXT);(注:a.txt)为文本字典,运行无报错,但是无法正确匹配(如:我的a字典就2个词,好纠结啊,纠结死啦,但是当我输入时还是分...
... $cws->set_rule(ini_get('scws.default.fpath') . '/rules.utf8.ini'); $cws->set_dict(ini_get('scws.default.fpath') . '/dict.utf8.xdb'); 再次运行,分词正确了[hr] 不过,又出现了奇怪的问题,我在原来的测试文本后面随便加了两个字母,分词又不对了。我继续...
1. 你的词典只有“再试一个”这个词,当然就只有它了 2. scws_new/scws_free 是C 里的函数,在PHP中是 scws_open/scws_close 建议在PHP中用对象方式使用 scws 即 $so = scws_new(); $so->set_charset('gbk'); $so->set_dict(...