在做搜索引擎,求助!~ 本人目前在做搜索引擎,但遇到一个问题,是不是难题数据库里有"中国",输入“中国人”搜不出这个“中国”的数据,我要实现即使输入“中国人”或者其他的带“中国”的关键词也要搜出这个“中国”的数据,我该怎么做? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用分词算法,这个是个很大的研究课题。百度和google都有专门的研究分词算法的。个人做的话,很费劲的。根据你的需求我有个小建议,你可以把"中国人",拆成数组,然后根据单个子去搜,就能搜到中国了。只能算是分字吧。给你一个分数组的方法。<?php $str = "我爱你ABC123"; $a = array(); $z = 0; for ($i=0; $i< strlen($str); $i++){ $x = substr($str,$i,1); if (ord($x)>127){ $a[$i]= substr($str,$i,2); //当大于127时,取到的ascii码是一半,需要加另外一半 $i=$i+1; }else{ $a[$i]= $x; } } print_r($a); ?> 我知道一款搜索引擎叫做:sphider,之前用过,很好用。如果需要的话,请访问:www.sphider.eu。应该有你需要的。 这个插件如何使多个复选框输出的值都有连接 关于一个运算符的小问题! 图片服务器分离的问题? 求高手解答? 请教一个入门问题 php多个问题 急!为什么cpu占用率100%?小女子感激不尽 求数组重组代码 怎样保存登录用户的用户名呢?分数不够可以再加 checkbox最后的问题 思路问题 如何解决下述两个问题! 这个swf的flash文件怎么反汇编成.fla文件?反汇编好了要可以导出为flash文件不出错。
根据你的需求我有个小建议,你可以把"中国人",拆成数组,然后根据单个子去搜,就能搜到中国了。只能算是分字吧。给你一个分数组的方法。
<?php
$str = "我爱你ABC123";
$a = array();
$z = 0;
for ($i=0; $i< strlen($str); $i++){
$x = substr($str,$i,1);
if (ord($x)>127){
$a[$i]= substr($str,$i,2); //当大于127时,取到的ascii码是一半,需要加另外一半
$i=$i+1;
}else{
$a[$i]= $x;
}
}
print_r($a);
?>