PHP程序员站--PHP编程开发平台
 当前位置:主页 >> PHP基础 >> 基础文章 >> 

php实现中文分词

php实现中文分词

来源:  作者:  发布时间:2007-12-27
搜索引擎中都要用到分词技术,一般都用在全文搜索中,
搜索引擎中都要用到分词技术,一般都用在全文搜索中,这是一个简单的分词php代码,实际应用意义并不大
<?php
function substring($str, $start, $len){
 
 $strlen = strlen($str);
 if($start > $strlen){
 return "";
 }
 for($i = 0; $i < $start; $i++){
 if(ord($str[$i]) > 0x7f ){
 $start++;
 $i++;
 }
 }
 for($i=0; $i < $len; $i++) {
 if(ord($str[$i+$start]) > 0x7f){
 $len++;
 $i++;
 }
 }
 return substr($str, $start, $len);
}
 
// 切词函数,有时用在mysql 全文检索上
function wordSegment($str, $len)
{
 $startPos = 0;
 $strLen = $real_strLen = strlen($str);
 
 for($i = 0; $i < $real_strLen; $i++){
 if(ord($str[$i]) > 0x7f ){


 $strLen--;
 $i++;
 }
 }
 
 $rltStrArray = array();
 while(($strLen - $startPos) >= $len )
 {
 $rltStrArray[] = substring($str, $startPos++, $len);
 }
 return $rltStrArray;
}
 
$testStr = "nbs v1.0beta测试版发布!";
echo $testStr . "\r\n";
print_r(wordSegment($testStr, 3));
?>
运行结果:Array ( [0] => nbs v1 [1] => bs v1. [2] => s v1.0 [3] => v1.0b [4] => v1.0be [5] => 1.0bet [6] => .0beta [7] => 0beta测 [8] => beta测试 [9] => eta测试版 [10] => ta测试版发 [11] => a测试版发布 [12] => 测试版发布!
Tags: php   中文  
最新文章
推荐阅读
月点击排行榜
PHP程序员站 Copyright © 2007-2010,PHPERZ.COM All Rights Reserved 粤ICP备07503606号