phpanalysis中文分詞類詳解

字號:


    phpanalysis是目前廣泛使用的中文分詞類,使用反向匹配模式分詞,因此兼容編碼更廣泛,現(xiàn)將其變量與常用函數(shù)詳解如下:
    一、比較重要的成員變量
    $resulttype = 1 生成的分詞結(jié)果數(shù)據(jù)類型(1 為全部, 2為 詞典詞匯及單個(gè)中日韓簡繁字符及英文, 3 為詞典詞匯及英文)
    這個(gè)變量一般用 setresulttype( $rstype ) 這方法進(jìn)行設(shè)置。
    $notsplitlen = 5 切分句子最短長度
    $tolower = false 把英文單詞全部轉(zhuǎn)小寫
    $differmax = false 使用最大切分模式對二元詞進(jìn)行消岐
    $unitword = true 嘗試合并單字(即是新詞識別)
    $differfreq = false 使用熱門詞優(yōu)先模式進(jìn)行消岐
    二、主要成員函數(shù)列表
    1、public function __construct($source_charset='utf-8', $target_charset='utf-8', $load_all=true, $source='')
    函數(shù)說明:構(gòu)造函數(shù)
    參數(shù)列表:
    $source_charset 源字符串編碼
    $target_charset 目錄字符串編碼
    $load_all 是否完全加載詞典(此參數(shù)已經(jīng)作廢)
    $source 源字符串
    如果輸入輸出都是utf-8,實(shí)際上可以不必使用任何參數(shù)進(jìn)行初始化,而是通過 setsource 方法設(shè)置要操作的文本
    2、public function setsource( $source, $source_charset='utf-8', $target_charset='utf-8' )
    函數(shù)說明:設(shè)置源字符串
    參數(shù)列表:
    $source 源字符串
    $source_charset 源字符串編碼
    $target_charset 目錄字符串編碼
    返回值:bool
    3、public function startanalysis($optimize=true)
    函數(shù)說明:開始執(zhí)行分詞操作
    參數(shù)列表:
    $optimize 分詞后是否嘗試優(yōu)化結(jié)果
    返回值:void
    一個(gè)基本的分詞過程:
    //////////////////////////////////////
    $pa = new phpanalysis();
    $pa->setsource('需要進(jìn)行分詞的字符串');
    //設(shè)置分詞屬性
    $pa->resulttype = 2;
    $pa->differmax = true;
    $pa->startanalysis();
    //獲取你想要的結(jié)果
    $pa->getfinallyindex();
    ////////////////////////////////////////
    4、public function setresulttype( $rstype )
    函數(shù)說明:設(shè)置返回結(jié)果的類型
    實(shí)際是對成員變量$resulttype的操作
    參數(shù) $rstype 值為:
    1 為全部, 2為 詞典詞匯及單個(gè)中日韓簡繁字符及英文, 3 為詞典詞匯及英文
    返回值:void
    5、public function getfinallykeywords( $num = 10 )
    函數(shù)說明:獲取出現(xiàn)頻率最高的指定詞條數(shù)(通常用于提取文檔關(guān)鍵字)
    參數(shù)列表:
    $num = 10 返回詞條個(gè)數(shù)
    返回值:用,分隔的關(guān)鍵字列表
    6、public function getfinallyresult($spword=' ')
    函數(shù)說明:獲得最終分詞結(jié)果
    參數(shù)列表:
    $spword 詞條之間的分隔符
    返回值:string
    7、public function getsimpleresult()
    函數(shù)說明:獲得粗分結(jié)果
    返回值:array
    8、public function getsimpleresultall()
    函數(shù)說明:獲得包含屬性信息的粗分結(jié)果
    屬性(1中文詞句、2 ansi詞匯(包括全角),3 ansi標(biāo)點(diǎn)符號(包括全角),4數(shù)字(包括全角),5 中文標(biāo)點(diǎn)或無法識別字符)
    返回值:array
    9、public function getfinallyindex()
    函數(shù)說明:獲取hash索引數(shù)組
    返回值:array('word'=>count,...) 按出現(xiàn)頻率排序
    10、public function makedict( $source_file, $target_file='' )
    函數(shù)說明:把文本文件詞庫編譯成詞典
    參數(shù)列表:
    $source_file 源文本文件
    $target_file 目標(biāo)文件(如果不指定,則為當(dāng)前詞典)
    返回值:void
    11、public function exportdict( $targetfile )
    函數(shù)說明:導(dǎo)出當(dāng)前詞典全部詞條為文本文件
    參數(shù)列表:
    $targetfile 目標(biāo)文件
    返回值:void