Joomla!-开源天空

2008-12-05
首页 专栏热点 Joomla! 源代码分析 织梦分词支持Joomla!系统中文文章TAG的改动


织梦分词支持Joomla!系统中文文章TAG的改动

E-mail

如果你还不了解织梦分词算法在Joomla!中的使用,请先参考这篇文章:自动生成Joomla!文章的TAG标签 ,这篇文章中数据库读取用的是zend db,接下来我该一个Joomla!组件方式的Joomla!文章TAG生成扩展。下面是一些关于织梦分词的改动: 

首先织梦的分词中,pub_splitword_www.php中 的getIndexText函数中,全文的514行:

if(strlen($w)==2&&ord($w[0])>0x80) continue;

这一行会导致,只有中文才能作为索引词,所以要将这一行注释掉。比如Joomla!一定是我们的TAG,如果没有英文TAG,显然对于Joomla!系统是不合适的。

织梦分词可以在这篇文章中下载:

自动生成Joomla!文章的TAG标签

接下来,我们要修改的就是在分词过程总,处理中文标点,我们简单的将中文标点去除就好了。这也很简单,在pub_splitword_www.php中的ReviseString函数,第472,472行注释掉,改为:

if($prechar!=0) $okstr .= " ";
else $okstr .= " ";

 这样就可以将大部分的中文标点去掉了。

最后,针对Joomla!系统的分词,要添加合理的词库。附件是我整理的添加了Joomla!相关词库的词语和词频,你可以试试。你也可以针对自己站点写一个词典整理程序。

现在的织梦分词还没有处理英文大小写,有兴趣的朋友可以查查如何修改。

Attatchments:
您还没有登录,登录后方能下载,如果您还没有注册,请点击 免费注册


收藏此文章:
Digg! Reddit! Del.icio.us! JoomlaVote! Google! Live! Facebook! StumbleUpon! Yahoo! Free social bookmarking plugins and extensions for Joomla! websites!
User Reviews(2)
 织梦分词词典
作者:suiyue 星期二, 26 八月 2008 02:12
我想问下词典中 如少年 4356
后面的数字代表什么?可以乱填吗
比如我想加个vista 54714?
 回复:[文章评论]--织梦分词支持Joomla!系统中文文章TAG的改动
作者:admin 星期二, 26 八月 2008 18:55
后边那个数字代表词频,是一个统计数据,你自己新添加的词可以自己指定词频。

如果重要,就数字大一些。

发表您的文章评论

您的姓名 (昵称)
标题:
评分: 很差一般较好很好
评论:
验证码:
请输入验证码