...et_tops(s,1000,NULL); 而下面判断却没有包含这个词 if( scws_has_word(s,"*")) //"*"用NULL代替也不行 另外我用函数scws_set_ignore(s,1),怎么去不掉文本中的空格等特殊字符[hr] 我用的版本是scws-1.1.2
你可以正常分词试试,然后打印一下词的 attr 属性到底是不是* 号 我估计是不是你自定义词典先于默认词典加载,导致attr属性被覆盖了?
问题已经搞明白,非常感谢 hightman 。 以前的重建没有完成。服务重启一下即可。 注意: 如果使用了 rebuild 重建索引,一定要完成,否则就会卡在那里。 建议大家测试没有问题的情况下,使用后台执行的方式进行 rebuild 重建...
.../quote] 但是这跟文档的描述有出入啊。 [quote] ·int scws_has_word(scws_t s, char *xattr); 描述:判断text中是包括指定的词性的词汇。参数 xattr 用来描述要排除或参与的统计词汇词性, 多个词性之间用逗号隔开。当以~开头时表示...
[quote]int scws_has_word(scws_t s, char *xattr) { int off, cnt, xmode = SCWS_NA; scws_res_t res, cur; char *word; word_attr *at = NULL; if (!s || !s->txt) return 0; __PARSE_XATTR__; // save the offset. (cnt -> return_value) off = s->off; ...
[quote='backluck' pid='3650' dateline='1280380226'] [quote]int scws_has_word(scws_t s, char *xattr) { int off, cnt, xmode = SCWS_NA; scws_res_t res, cur; char *word; word_attr *at = NULL; if (!s || !s->txt) return 0; __PARSE_XATTR__; // save th...
不知为何,提示 "DB has been rebuilding" 就退出了。:@ 代码参考: [php] // 宣布开始重建索引 $index->beginRebuild(); // 然后在此开始添加数据 ... $index->add($doc); ... // 告诉服务器重建完比 $index->endRebuild();[/php] 我的代码应该...
再次更新测试结果: 硬件信息: R410 至强四核E5620 2.4GHz*2/4G*4 1333MHz/600G*2/SAS-15Krpm Raid1 导入索引DEBUG信息: [code] 1998001, channelId=11, CostTime=2895.08, UpdateIndexTime=1226.33, UpdateProductTime=2742.26, ProductCount=10000, ProcessCount=2000000.00, MemoryUsag...