php
php自定义中文分词方法,一个用php写的中文分词函数-凯发ag旗舰厅登录网址下载
class segmentation {
var $options = array('lowercase' => true,
'segment_english' => false);
var $dict_name = 'unknown';
var $dict_words = array();
function setlowercase($value) {
http://www.gaodaima.com/50744.html一个用php写的中文分词函数_php
if ($value) {
$this->options['lowercase'] = true;
} else {
$this->options['lowercase'] = false;
}
return true;
}
function setsegmentenglish($value) {
if ($value) {
$this->options['segment_english'] = true;
} else {
$this->options['segment_english'] = false;
}
return true;
}
function load($dict_file) {
if (!file_exists($dict_file)) {
return false;
}
$fp = fopen($dict_file, 'r');
$temp = fgets($fp, 1024);
if ($temp === false) {
return false;
} else {
if (strpos($temp, "t") !== false) {
list ($dict_type, $dict_name) = explode("t", trim($temp));
} else {
$dict_type = trim($temp);
$dict_name = 'unknown';
}
$this->dict_name = $dict_name;
if ($dict_type !== 'dict_word_w') {
return false;
}
}
while (!feof($fp)) {
$this->dict_words[rtrim(fgets($fp, 32))] = 1;
}
fclose($fp);
return true;
}
function getdictname() {
return $this->dict_name;
}
function segmentstring($str) {
if (count($this->dict_words) === 0) {
return false;
}
$lines = explode("n", $str);
return $this->_segmentlines($lines);
}
function segmentfile($filename) {
if (count($this->dict_words) === 0) {
return false;
}
$lines = file($filename);
return $this->_segmentlines($lines);
}
function _segmentlines($lines) {
$contents_segmented = '';
foreach ($lines as $line) {
$contents_segmented .= $this->_segmentline(rtrim($line)) . " n";
}
do {
$contents_segmented = str_replace(' ', ' ', $contents_segmented);
} while (strpos($contents_segmented, ' ') !== false);
return $contents_segmented;?>
与50位技术专家面对面20年技术见证,附赠技术全景图总结
以上是凯发ag旗舰厅登录网址下载为你收集整理的php自定义中文分词方法,一个用php写的中文分词函数_php的全部内容,希望文章能够帮你解决所遇到的问题。
如果觉得凯发ag旗舰厅登录网址下载网站内容还不错,欢迎将凯发ag旗舰厅登录网址下载推荐给好友。
- 上一篇: php 头bom_关于php中bom头的
- 下一篇: