Jieba PHP: The Best PHP Chinese Word Segmentation Module
文章推薦指數: 80 %
"Jieba" (Chinese for "to stutter") Chinese text segmentation: built to be the best PHP Chinese word segmentation module.
VeronicaRoob
1652604180
JiebaPHP:TheBestPHPChineseWordSegmentationModule
jieba-php"結巴"中文分詞:做最好的PHP中文分詞、中文斷詞組件,目前翻譯版本為jieba-0.33版本,未來再慢慢往上升級,效能也需要再改善,請有興趣的開發者一起加入開發!若想使用Python版本請前往fxsjy/jieba現在已經可以支援繁體中文!只要將字典切換為big模式即可!"Jieba"(Chinesefor"tostutter")Chinesetextsegmentation:builttobethebestPHPChinesewordsegmentationmodule.ScrolldownforEnglishdocumentation.線上展示網站網址:http://jieba-php.fukuball.com網站原始碼:https://github.com/fukuball/jieba-php.fukuball.comFeature支持三種分詞模式:1)默認精確模式,試圖將句子最精確地切開,適合文本分析;2)全模式,把句子中所有的可以成詞的詞語都掃描出來,但是不能解決歧義。
(需要充足的字典) 搜尋引擎模式,在精確模式的基礎上,對長詞再次切分,提高召回率,適合用於搜尋引擎分詞。
支持繁體斷詞支持自定義詞典Usage自動安裝:使用composer安裝後,透過autoload引用代碼示例composerrequirefukuball/jieba-php:dev-master
代碼示例require_once"/path/to/your/vendor/autoload.php";
手動安裝:將jieba-php放置適當目錄後,透過require_once引用代碼示例require_once"/path/to/your/vendor/multi-array/MultiArray.php";
require_once"/path/to/your/vendor/multi-array/Factory/MultiArrayFactory.php";
require_once"/path/to/your/class/Jieba.php";
require_once"/path/to/your/class/Finalseg.php";
Algorithm基於Trie樹結構實現高效的詞圖掃描,生成句子中漢字所有可能成詞情況所構成的有向無環圖(DAG)採用了動態規劃查找最大概率路徑,找出基於詞頻的最大切分組合對於未登錄詞,採用了基於漢字成詞能力的HMM模型,使用了Viterbi算法BEMS的解釋https://github.com/fxsjy/jieba/issues/7Interface組件只提供jieba.cut方法用於分詞cut方法接受兩個輸入參數:1)第一個參數為需要分詞的字符串2)cut_all參數用來控制分詞模式待分詞的字符串可以是utf-8字符串jieba.cut返回的結構是一個可迭代的array功能1):分词cut方法接受想個輸入參數:1)第一個參數為需要分詞的字符串2)cut_all參數用來控制分詞模式cutForSearch方法接受一個參數:需要分詞的字符串,該方法適合用於搜索引擎構建倒排索引的分詞,粒度比較細注意:待分詞的字符串是utf-8字符串cut以及cutForSearch返回的結構是一個可迭代的array代碼示例(Tutorial)ini_set('memory_limit','1024M');
require_once"/path/to/your/vendor/multi-array/MultiArray.php";
require_once"/path/to/your/vendor/multi-array/Factory/MultiArrayFactory.php";
require_once"/path/to/your/class/Jieba.php";
require_once"/path/to/your/class/Finalseg.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
Jieba::init();
Finalseg::init();
$seg_list=Jieba::cut("怜香惜玉也得要看对象啊!");
var_dump($seg_list);
$seg_list=Jieba::cut("我来到北京清华大学",true);
var_dump($seg_list);#全模式
$seg_list=Jieba::cut("我来到北京清华大学",false);
var_dump($seg_list);#默認精確模式
$seg_list=Jieba::cut("他来到了网易杭研大厦");
var_dump($seg_list);
$seg_list=Jieba::cutForSearch("小明硕士毕业于中国科学院计算所,后在日本京都大学深造");#搜索引擎模式
var_dump($seg_list);
Output:array(7){
[0]=>
string(12)"怜香惜玉"
[1]=>
string(3)"也"
[2]=>
string(3)"得"
[3]=>
string(3)"要"
[4]=>
string(3)"看"
[5]=>
string(6)"对象"
[6]=>
string(3)"啊"
}
FullMode:
array(15){
[0]=>
string(3)"我"
[1]=>
string(3)"来"
[2]=>
string(6)"来到"
[3]=>
string(3)"到"
[4]=>
string(3)"北"
[5]=>
string(6)"北京"
[6]=>
string(3)"京"
[7]=>
string(3)"清"
[8]=>
string(6)"清华"
[9]=>
string(12)"清华大学"
[10]=>
string(3)"华"
[11]=>
string(6)"华大"
[12]=>
string(3)"大"
[13]=>
string(6)"大学"
[14]=>
string(3)"学"
}
DefaultMode:
array(4){
[0]=>
string(3)"我"
[1]=>
string(6)"来到"
[2]=>
string(6)"北京"
[3]=>
string(12)"清华大学"
}
array(6){
[0]=>
string(3)"他"
[1]=>
string(6)"来到"
[2]=>
string(3)"了"
[3]=>
string(6)"网易"
[4]=>
string(6)"杭研"
[5]=>
string(6)"大厦"
}
(此處,“杭研“並沒有在詞典中,但是也被Viterbi算法識別出來了)
SearchEngineMode:
array(18){
[0]=>
string(6)"小明"
[1]=>
string(6)"硕士"
[2]=>
string(6)"毕业"
[3]=>
string(3)"于"
[4]=>
string(6)"中国"
[5]=>
string(6)"科学"
[6]=>
string(6)"学院"
[7]=>
string(9)"科学院"
[8]=>
string(15)"中国科学院"
[9]=>
string(6)"计算"
[10]=>
string(9)"计算所"
[11]=>
string(3)"后"
[12]=>
string(3)"在"
[13]=>
string(6)"日本"
[14]=>
string(6)"京都"
[15]=>
string(6)"大学"
[16]=>
string(18)"日本京都大学"
[17]=>
string(6)"深造"
}
功能2):添加自定義詞典開發者可以指定自己自定義的詞典,以便包含jieba詞庫裡沒有的詞。
雖然jieba有新詞識別能力,但是自行添加新詞可以保證更高的正確率用法:Jieba::loadUserDict(file_name)#file_name為自定義詞典的絕對路徑詞典格式和dict.txt一樣,一個詞佔一行;每一行分為三部分,一部分為詞語,一部分為詞頻,一部分為詞性,用空格隔開範例:云计算5n李小福2n创新办3n之前:李小福/是/创新/办/主任/也/是/云/计算/方面/的/专家/加載自定義詞庫後: 李小福/是/创新办/主任/也/是/云计算/方面/的/专家/說明:"通过用户自定义词典来增强歧义纠错能力"---https://github.com/fxsjy/jieba/issues/14自定義詞典:https://github.com/fukuball/jieba-php/blob/master/src/dict/user_dict.txt功能3):關鍵詞提取JiebaAnalyse::extractTags($content,$top_k)content為待提取的文本top_k為返回幾個TF/IDF權重最大的關鍵詞,默認值為20可使用setStopWords增加自定義stopwords代碼示例(關鍵詞提取)ini_set('memory_limit','600M');
require_once"/path/to/your/vendor/multi-array/MultiArray.php";
require_once"/path/to/your/vendor/multi-array/Factory/MultiArrayFactory.php";
require_once"/path/to/your/class/Jieba.php";
require_once"/path/to/your/class/Finalseg.php";
require_once"/path/to/your/class/JiebaAnalyse.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
useFukuball\Jieba\JiebaAnalyse;
Jieba::init(array('mode'=>'test','dict'=>'small'));
Finalseg::init();
JiebaAnalyse::init();
$top_k=10;
$content=file_get_contents("/path/to/your/dict/lyric.txt","r");
$tags=JiebaAnalyse::extractTags($content,$top_k);
var_dump($tags);
JiebaAnalyse::setStopWords('/path/to/your/dict/stop_words.txt');
$tags=JiebaAnalyse::extractTags($content,$top_k);
var_dump($tags);
Output:array(10){
'沒有'=>
double(1.0592831964595)
'所謂'=>
double(0.90795702553671)
'是否'=>
double(0.66385043195443)
'一般'=>
double(0.54607060161899)
'雖然'=>
double(0.30265234184557)
'來說'=>
double(0.30265234184557)
'肌迫'=>
double(0.30265234184557)
'退縮'=>
double(0.30265234184557)
'矯作'=>
double(0.30265234184557)
'怯懦'=>
double(0.24364586159392)
}
array(10){
'所謂'=>
double(1.1569129841516)
'一般'=>
double(0.69579963754677)
'矯作'=>
double(0.38563766138387)
'來說'=>
double(0.38563766138387)
'退縮'=>
double(0.38563766138387)
'雖然'=>
double(0.38563766138387)
'肌迫'=>
double(0.38563766138387)
'怯懦'=>
double(0.31045198493419)
'隨便說說'=>
double(0.19281883069194)
'一場'=>
double(0.19281883069194)
}
功能4):詞性分詞詞性說明:https://gist.github.com/luw2007/6016931代碼示例(Tutorial)ini_set('memory_limit','600M');
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/MultiArray.php";
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/Factory/MultiArrayFactory.php";
require_oncedirname(dirname(__FILE__))."/class/Jieba.php";
require_oncedirname(dirname(__FILE__))."/class/Finalseg.php";
require_oncedirname(dirname(__FILE__))."/class/Posseg.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
useFukuball\Jieba\Posseg;
Jieba::init();
Finalseg::init();
Posseg::init();
$seg_list=Posseg::cut("这是一个伸手不见五指的黑夜。
我叫孙悟空,我爱北京,我爱Python和C++。
");
var_dump($seg_list);
Output:array(21){
[0]=>
array(2){
["word"]=>
string(3)"这"
["tag"]=>
string(1)"r"
}
[1]=>
array(2){
["word"]=>
string(3)"是"
["tag"]=>
string(1)"v"
}
[2]=>
array(2){
["word"]=>
string(6)"一个"
["tag"]=>
string(1)"m"
}
[3]=>
array(2){
["word"]=>
string(18)"伸手不见五指"
["tag"]=>
string(1)"i"
}
[4]=>
array(2){
["word"]=>
string(3)"的"
["tag"]=>
string(2)"uj"
}
[5]=>
array(2){
["word"]=>
string(6)"黑夜"
["tag"]=>
string(1)"n"
}
[6]=>
array(2){
["word"]=>
string(3)"。
"
["tag"]=>
string(1)"x"
}
[7]=>
array(2){
["word"]=>
string(3)"我"
["tag"]=>
string(1)"r"
}
[8]=>
array(2){
["word"]=>
string(3)"叫"
["tag"]=>
string(1)"v"
}
[9]=>
array(2){
["word"]=>
string(9)"孙悟空"
["tag"]=>
string(2)"nr"
}
[10]=>
array(2){
["word"]=>
string(3)","
["tag"]=>
string(1)"x"
}
[11]=>
array(2){
["word"]=>
string(3)"我"
["tag"]=>
string(1)"r"
}
[12]=>
array(2){
["word"]=>
string(3)"爱"
["tag"]=>
string(1)"v"
}
[13]=>
array(2){
["word"]=>
string(6)"北京"
["tag"]=>
string(2)"ns"
}
[14]=>
array(2){
["word"]=>
string(3)","
["tag"]=>
string(1)"x"
}
[15]=>
array(2){
["word"]=>
string(3)"我"
["tag"]=>
string(1)"r"
}
[16]=>
array(2){
["word"]=>
string(3)"爱"
["tag"]=>
string(1)"v"
}
[17]=>
array(2){
["word"]=>
string(6)"Python"
["tag"]=>
string(3)"eng"
}
[18]=>
array(2){
["word"]=>
string(3)"和"
["tag"]=>
string(1)"c"
}
[19]=>
array(2){
["word"]=>
string(3)"C++"
["tag"]=>
string(3)"eng"
}
[20]=>
array(2){
["word"]=>
string(3)"。
"
["tag"]=>
string(1)"x"
}
}
功能5):切換成繁體字典代碼示例(Tutorial)ini_set('memory_limit','1024M');
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/MultiArray.php";
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/Factory/MultiArrayFactory.php";
require_oncedirname(dirname(__FILE__))."/class/Jieba.php";
require_oncedirname(dirname(__FILE__))."/class/Finalseg.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
Jieba::init(array('mode'=>'default','dict'=>'big'));
Finalseg::init();
$seg_list=Jieba::cut("怜香惜玉也得要看对象啊!");
var_dump($seg_list);
$seg_list=Jieba::cut("憐香惜玉也得要看對象啊!");
var_dump($seg_list);
Output:array(7){
[0]=>
string(12)"怜香惜玉"
[1]=>
string(3)"也"
[2]=>
string(3)"得"
[3]=>
string(3)"要"
[4]=>
string(3)"看"
[5]=>
string(6)"对象"
[6]=>
string(3)"啊"
}
array(7){
[0]=>
string(12)"憐香惜玉"
[1]=>
string(3)"也"
[2]=>
string(3)"得"
[3]=>
string(3)"要"
[4]=>
string(3)"看"
[5]=>
string(6)"對象"
[6]=>
string(3)"啊"
}
功能5):切換成繁體字典代碼示例(Tutorial)ini_set('memory_limit','1024M');
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/MultiArray.php";
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/Factory/MultiArrayFactory.php";
require_oncedirname(dirname(__FILE__))."/class/Jieba.php";
require_oncedirname(dirname(__FILE__))."/class/Finalseg.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
Jieba::init(array('mode'=>'default','dict'=>'big'));
Finalseg::init();
$seg_list=Jieba::cut("怜香惜玉也得要看对象啊!");
var_dump($seg_list);
$seg_list=Jieba::cut("憐香惜玉也得要看對象啊!");
var_dump($seg_list);
Output:array(7){
[0]=>
string(12)"怜香惜玉"
[1]=>
string(3)"也"
[2]=>
string(3)"得"
[3]=>
string(3)"要"
[4]=>
string(3)"看"
[5]=>
string(6)"对象"
[6]=>
string(3)"啊"
}
array(7){
[0]=>
string(12)"憐香惜玉"
[1]=>
string(3)"也"
[2]=>
string(3)"得"
[3]=>
string(3)"要"
[4]=>
string(3)"看"
[5]=>
string(6)"對象"
[6]=>
string(3)"啊"
}
功能6):保留日语或者朝鲜语原文不进行过滤代碼示例(Tutorial)ini_set('memory_limit','1024M');
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/MultiArray.php";
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/Factory/MultiArrayFactory.php";
require_oncedirname(dirname(__FILE__))."/class/Jieba.php";
require_oncedirname(dirname(__FILE__))."/class/Finalseg.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
Jieba::init(array('cjk'=>'all'));
Finalseg::init();
$seg_list=Jieba::cut("한국어또는조선말은제주특별자치도를제외한한반도및그부속도서와한민족거주지역에서쓰이는언어로");
var_dump($seg_list);
$seg_list=Jieba::cut("日本語は、主に日本国内や日本人同士の間で使われている言語である。
");
var_dump($seg_list);
//加载日语词库可以对日语进行简单的分词
Jieba::loadUserDict("/path/to/your/japanese/dict.txt");
$seg_list=Jieba::cut("日本語は、主に日本国内や日本人同士の間で使われている言語である。
");
var_dump($seg_list);
Output:array(15){
[0]=>
string(9)"한국어"
[1]=>
string(6)"또는"
[2]=>
string(12)"조선말은"
[3]=>
string(24)"제주특별자치도를"
[4]=>
string(9)"제외한"
[5]=>
string(9)"한반도"
[6]=>
string(3)"및"
[7]=>
string(3)"그"
[8]=>
string(6)"부속"
[9]=>
string(9)"도서와"
[10]=>
string(9)"한민족"
[11]=>
string(6)"거주"
[12]=>
string(12)"지역에서"
[13]=>
string(9)"쓰이는"
[14]=>
string(9)"언어로"
}
array(21){
[0]=>
string(6)"日本"
[1]=>
string(3)"語"
[2]=>
string(3)"は"
[3]=>
string(3)"主"
[4]=>
string(3)"に"
[5]=>
string(6)"日本"
[6]=>
string(6)"国内"
[7]=>
string(3)"や"
[8]=>
string(6)"日本"
[9]=>
string(3)"人"
[10]=>
string(6)"同士"
[11]=>
string(3)"の"
[12]=>
string(3)"間"
[13]=>
string(3)"で"
[14]=>
string(3)"使"
[15]=>
string(3)"わ"
[16]=>
string(6)"れて"
[17]=>
string(6)"いる"
[18]=>
string(6)"言語"
[19]=>
string(3)"で"
[20]=>
string(6)"ある"
}
array(17){
[0]=>
string(9)"日本語"
[1]=>
string(3)"は"
[2]=>
string(6)"主に"
[3]=>
string(9)"日本国"
[4]=>
string(3)"内"
[5]=>
string(3)"や"
[6]=>
string(9)"日本人"
[7]=>
string(6)"同士"
[8]=>
string(3)"の"
[9]=>
string(3)"間"
[10]=>
string(3)"で"
[11]=>
string(3)"使"
[12]=>
string(3)"わ"
[13]=>
string(6)"れて"
[14]=>
string(6)"いる"
[15]=>
string(6)"言語"
[16]=>
string(9)"である"
}
功能7):返回詞語在原文的起止位置代碼示例(Tutorial)ini_set('memory_limit','1024M');
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/MultiArray.php";
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/Factory/MultiArrayFactory.php";
require_oncedirname(dirname(__FILE__))."/class/Jieba.php";
require_oncedirname(dirname(__FILE__))."/class/Finalseg.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
Jieba::init(array('mode'=>'test','dict'=>'big'));
Finalseg::init();
$seg_list=Jieba::tokenize("永和服装饰品有限公司");
var_dump($seg_list);
Output:array(4){
[0]=>
array(3){
'word'=>
string(6)"永和"
'start'=>
int(0)
'end'=>
int(2)
}
[1]=>
array(3){
'word'=>
string(6)"服装"
'start'=>
int(2)
'end'=>
int(4)
}
[2]=>
array(3){
'word'=>
string(6)"饰品"
'start'=>
int(4)
'end'=>
int(6)
}
[3]=>
array(3){
'word'=>
string(12)"有限公司"
'start'=>
int(6)
'end'=>
int(10)
}
}
其他詞典佔用內容較小的詞典https://github.com/fukuball/jieba-php/blob/master/src/dict/dict.small.txt支持繁體斷詞的詞典https://github.com/fukuball/jieba-php/blob/master/src/dict/dict.big.txt常見問題模型的數據是如何生成的?https://github.com/fxsjy/jieba/issues/7這個庫的授權是?https://github.com/fxsjy/jieba/issues/2jieba-phpEnglishDocumentOnlineDemoDemoSiteUrl:http://jieba-php.fukuball.comDemoSiteRepo:https://github.com/fukuball/jieba-php.fukuball.comFeatureSupportthreetypesofsegmentationmode: AccurateMode,attempttocutthesentenceintothemostaccuratesegmentation,whichissuitablefortextanalysis; FullMode,breakthewordsofthesentenceintowordsscanned SearchEngineMode,basedontheAccurateMode,withanattempttocutthelongwordsintoseveralshortwords,whichcanenhancetherecallrateUsageInstallation:Usecomposertoinstalljieba-php,thenrequiretheautoloadfiletousejieba-php.AlgorithmBasedontheTrietreestructuretoachieveefficientwordgraphscanning;sentencesusingChinesecharactersconstituteadirectedacyclicgraph(DAG).Employsmemorysearchtocalculatethemaximumprobabilitypath,inordertoidentifythemaximumtangentialpointsbasedonwordfrequencycombination.Forunknownwords,thecharacterpositionHMM-basedmodelisused,usingtheViterbialgorithm.ThemeaningofBEMShttps://github.com/fxsjy/jieba/issues/7.InterfaceThecutmethodacceptstwoparameters:1)firstparameteristhestringtosegmentation2)thesecondparametercut_alltocontrolsegmentationmode.Thestringtosegmentationmayuseutf-8string.cutForSearchaccpetsonlyonparameter:thestringthatrequiressegmentation,anditwillcutthesentenceintoshortwordscutandcutForSearchreturnansegmentedarray.Function1)SegmentationExample(Tutorial)ini_set('memory_limit','1024M');
require_once"/path/to/your/vendor/multi-array/MultiArray.php";
require_once"/path/to/your/vendor/multi-array/Factory/MultiArrayFactory.php";
require_once"/path/to/your/class/Jieba.php";
require_once"/path/to/your/class/Finalseg.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
Jieba::init();
Finalseg::init();
$seg_list=Jieba::cut("怜香惜玉也得要看对象啊!");
var_dump($seg_list);
seg_list=jieba.cut("我来到北京清华大学",true)
var_dump($seg_list);#全模式
seg_list=jieba.cut("我来到北京清华大学",false)
var_dump($seg_list);#默認精確模式
seg_list=jieba.cut("他来到了网易杭研大厦")
var_dump($seg_list);
seg_list=jieba.cut_for_search("小明硕士毕业于中国科学院计算所,后在日本京都大学深造")#搜索引擎模式
var_dump($seg_list);
Output:array(7){
[0]=>
string(12)"怜香惜玉"
[1]=>
string(3)"也"
[2]=>
string(3)"得"
[3]=>
string(3)"要"
[4]=>
string(3)"看"
[5]=>
string(6)"对象"
[6]=>
string(3)"啊"
}
FullMode:
array(15){
[0]=>
string(3)"我"
[1]=>
string(3)"来"
[2]=>
string(6)"来到"
[3]=>
string(3)"到"
[4]=>
string(3)"北"
[5]=>
string(6)"北京"
[6]=>
string(3)"京"
[7]=>
string(3)"清"
[8]=>
string(6)"清华"
[9]=>
string(12)"清华大学"
[10]=>
string(3)"华"
[11]=>
string(6)"华大"
[12]=>
string(3)"大"
[13]=>
string(6)"大学"
[14]=>
string(3)"学"
}
DefaultMode:
array(4){
[0]=>
string(3)"我"
[1]=>
string(6)"来到"
[2]=>
string(6)"北京"
[3]=>
string(12)"清华大学"
}
array(6){
[0]=>
string(3)"他"
[1]=>
string(6)"来到"
[2]=>
string(3)"了"
[3]=>
string(6)"网易"
[4]=>
string(6)"杭研"
[5]=>
string(6)"大厦"
}
(此處,“杭研“並沒有在詞典中,但是也被Viterbi算法識別出來了)
SearchEngineMode:
array(18){
[0]=>
string(6)"小明"
[1]=>
string(6)"硕士"
[2]=>
string(6)"毕业"
[3]=>
string(3)"于"
[4]=>
string(6)"中国"
[5]=>
string(6)"科学"
[6]=>
string(6)"学院"
[7]=>
string(9)"科学院"
[8]=>
string(15)"中国科学院"
[9]=>
string(6)"计算"
[10]=>
string(9)"计算所"
[11]=>
string(3)"后"
[12]=>
string(3)"在"
[13]=>
string(6)"日本"
[14]=>
string(6)"京都"
[15]=>
string(6)"大学"
[16]=>
string(18)"日本京都大学"
[17]=>
string(6)"深造"
}
Function2)AddacustomdictionaryDeveloperscanspecifytheirowncustomdictionarytoincludeinthejiebathesaurus.jiebahastheabilitytoidentifynewwords,butaddingyourownnewwordscanensureahigherrateofcorrectsegmentation.Usage:Jieba::loadUserDict(file_name)#file_nameisacustomdictionarypath.Thedictionaryformatisthesameasthatofdict.txt:onewordperline;eachlineisdividedintotwoparts,thefirstistheworditself,theotheristhewordfrequency,separatedbyaspace.Example:云计算5李小福2创新办3之前:李小福/是/创新/办/主任/也/是/云/计算/方面/的/专家/加載自定義詞庫後: 李小福/是/创新办/主任/也/是/云计算/方面/的/专家/Function3)KeywordExtractionJiebaAnalyse::extractTags($content,$top_k)content:thetexttobeextractedtop_k:toreturnseveralTF/IDFweightsforthebiggestkeywords,thedefaultvalueis20Example(keywordextraction)ini_set('memory_limit','600M');
require_once"/path/to/your/vendor/multi-array/MultiArray.php";
require_once"/path/to/your/vendor/multi-array/Factory/MultiArrayFactory.php";
require_once"/path/to/your/class/Jieba.php";
require_once"/path/to/your/class/Finalseg.php";
require_once"/path/to/your/class/JiebaAnalyse.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
useFukuball\Jieba\JiebaAnalyse;
Jieba::init(array('mode'=>'test','dict'=>'small'));
Finalseg::init();
JiebaAnalyse::init();
$top_k=10;
$content=file_get_contents("/path/to/your/dict/lyric.txt","r");
$tags=JiebaAnalyse::extractTags($content,$top_k);
var_dump($tags);
Output:array(10){
["是否"]=>
float(1.2196321889395)
["一般"]=>
float(1.0032459890209)
["肌迫"]=>
float(0.64654314660465)
["怯懦"]=>
float(0.44762844339349)
["藉口"]=>
float(0.32327157330233)
["逼不得已"]=>
float(0.32327157330233)
["不安全感"]=>
float(0.26548304656279)
["同感"]=>
float(0.23929673812326)
["有把握"]=>
float(0.21043366018744)
["空洞"]=>
float(0.20598261709442)
}
Function4)WordSegmentationandTaggingWordTaggingMeaning:https://gist.github.com/luw2007/6016931Example(wordtagging)ini_set('memory_limit','600M');
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/MultiArray.php";
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/Factory/MultiArrayFactory.php";
require_oncedirname(dirname(__FILE__))."/class/Jieba.php";
require_oncedirname(dirname(__FILE__))."/class/Finalseg.php";
require_oncedirname(dirname(__FILE__))."/class/Posseg.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
useFukuball\Jieba\Posseg;
Jieba::init();
Finalseg::init();
Posseg::init();
$seg_list=Posseg::cut("这是一个伸手不见五指的黑夜。
我叫孙悟空,我爱北京,我爱Python和C++。
");
var_dump($seg_list);
Output:array(21){
[0]=>
array(2){
["word"]=>
string(3)"这"
["tag"]=>
string(1)"r"
}
[1]=>
array(2){
["word"]=>
string(3)"是"
["tag"]=>
string(1)"v"
}
[2]=>
array(2){
["word"]=>
string(6)"一个"
["tag"]=>
string(1)"m"
}
[3]=>
array(2){
["word"]=>
string(18)"伸手不见五指"
["tag"]=>
string(1)"i"
}
[4]=>
array(2){
["word"]=>
string(3)"的"
["tag"]=>
string(2)"uj"
}
[5]=>
array(2){
["word"]=>
string(6)"黑夜"
["tag"]=>
string(1)"n"
}
[6]=>
array(2){
["word"]=>
string(3)"。
"
["tag"]=>
string(1)"w"
}
[7]=>
array(2){
["word"]=>
string(3)"我"
["tag"]=>
string(1)"r"
}
[8]=>
array(2){
["word"]=>
string(3)"叫"
["tag"]=>
string(1)"v"
}
[9]=>
array(2){
["word"]=>
string(9)"孙悟空"
["tag"]=>
string(2)"nr"
}
[10]=>
array(2){
["word"]=>
string(3)","
["tag"]=>
string(1)"w"
}
[11]=>
array(2){
["word"]=>
string(3)"我"
["tag"]=>
string(1)"r"
}
[12]=>
array(2){
["word"]=>
string(3)"爱"
["tag"]=>
string(1)"v"
}
[13]=>
array(2){
["word"]=>
string(6)"北京"
["tag"]=>
string(2)"ns"
}
[14]=>
array(2){
["word"]=>
string(3)","
["tag"]=>
string(1)"w"
}
[15]=>
array(2){
["word"]=>
string(3)"我"
["tag"]=>
string(1)"r"
}
[16]=>
array(2){
["word"]=>
string(3)"爱"
["tag"]=>
string(1)"v"
}
[17]=>
array(2){
["word"]=>
string(6)"Python"
["tag"]=>
string(3)"eng"
}
[18]=>
array(2){
["word"]=>
string(3)"和"
["tag"]=>
string(1)"c"
}
[19]=>
array(2){
["word"]=>
string(3)"C++"
["tag"]=>
string(3)"eng"
}
[20]=>
array(2){
["word"]=>
string(3)"。
"
["tag"]=>
string(1)"w"
}
}
Function5):UseTraditionalChineseExample(Tutorial)ini_set('memory_limit','1024M');
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/MultiArray.php";
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/Factory/MultiArrayFactory.php";
require_oncedirname(dirname(__FILE__))."/class/Jieba.php";
require_oncedirname(dirname(__FILE__))."/class/Finalseg.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
Jieba::init(array('mode'=>'default','dict'=>'big'));
Finalseg::init();
$seg_list=Jieba::cut("怜香惜玉也得要看对象啊!");
var_dump($seg_list);
$seg_list=Jieba::cut("憐香惜玉也得要看對象啊!");
var_dump($seg_list);
Output:array(7){
[0]=>
string(12)"怜香惜玉"
[1]=>
string(3)"也"
[2]=>
string(3)"得"
[3]=>
string(3)"要"
[4]=>
string(3)"看"
[5]=>
string(6)"对象"
[6]=>
string(3)"啊"
}
array(7){
[0]=>
string(12)"憐香惜玉"
[1]=>
string(3)"也"
[2]=>
string(3)"得"
[3]=>
string(3)"要"
[4]=>
string(3)"看"
[5]=>
string(6)"對象"
[6]=>
string(3)"啊"
}
Function6):KeepingJapaneseorKoreanoriginaltextExample(Tutorial)ini_set('memory_limit','1024M');
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/MultiArray.php";
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/Factory/MultiArrayFactory.php";
require_oncedirname(dirname(__FILE__))."/class/Jieba.php";
require_oncedirname(dirname(__FILE__))."/class/Finalseg.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
Jieba::init(array('cjk'=>'all'));
Finalseg::init();
$seg_list=Jieba::cut("한국어또는조선말은제주특별자치도를제외한한반도및그부속도서와한민족거주지역에서쓰이는언어로");
var_dump($seg_list);
$seg_list=Jieba::cut("日本語は、主に日本国内や日本人同士の間で使われている言語である。
");
var_dump($seg_list);
//LoadingcustomJapanesedictionarycandoasimplewordsegmentation
Jieba::loadUserDict("/path/to/your/japanese/dict.txt");
$seg_list=Jieba::cut("日本語は、主に日本国内や日本人同士の間で使われている言語である。
");
var_dump($seg_list);
Output:array(15){
[0]=>
string(9)"한국어"
[1]=>
string(6)"또는"
[2]=>
string(12)"조선말은"
[3]=>
string(24)"제주특별자치도를"
[4]=>
string(9)"제외한"
[5]=>
string(9)"한반도"
[6]=>
string(3)"및"
[7]=>
string(3)"그"
[8]=>
string(6)"부속"
[9]=>
string(9)"도서와"
[10]=>
string(9)"한민족"
[11]=>
string(6)"거주"
[12]=>
string(12)"지역에서"
[13]=>
string(9)"쓰이는"
[14]=>
string(9)"언어로"
}
array(21){
[0]=>
string(6)"日本"
[1]=>
string(3)"語"
[2]=>
string(3)"は"
[3]=>
string(3)"主"
[4]=>
string(3)"に"
[5]=>
string(6)"日本"
[6]=>
string(6)"国内"
[7]=>
string(3)"や"
[8]=>
string(6)"日本"
[9]=>
string(3)"人"
[10]=>
string(6)"同士"
[11]=>
string(3)"の"
[12]=>
string(3)"間"
[13]=>
string(3)"で"
[14]=>
string(3)"使"
[15]=>
string(3)"わ"
[16]=>
string(6)"れて"
[17]=>
string(6)"いる"
[18]=>
string(6)"言語"
[19]=>
string(3)"で"
[20]=>
string(6)"ある"
}
array(17){
[0]=>
string(9)"日本語"
[1]=>
string(3)"は"
[2]=>
string(6)"主に"
[3]=>
string(9)"日本国"
[4]=>
string(3)"内"
[5]=>
string(3)"や"
[6]=>
string(9)"日本人"
[7]=>
string(6)"同士"
[8]=>
string(3)"の"
[9]=>
string(3)"間"
[10]=>
string(3)"で"
[11]=>
string(3)"使"
[12]=>
string(3)"わ"
[13]=>
string(6)"れて"
[14]=>
string(6)"いる"
[15]=>
string(6)"言語"
[16]=>
string(9)"である"
}
詞性說明a形容词(取英语形容词adjective的第1个字母。
)
ad副形词(直接作状语的形容词,形容词代码a和副词代码d并在一起。
)
ag形容词性语素(形容词性语素,形容词代码为a,语素代码g前面置以a。
)
an名形词(具有名词功能的形容词,形容词代码a和名词代码n并在一起。
)
b区别词(取汉字「别」的声母。
)
c连词(取英语连词conjunction的第1个字母。
)
d副词(取adverb的第2个字母,因其第1个字母已用于形容词。
)
df副词*
dg副语素(副词性语素,副词代码为d,语素代码g前面置以d。
)
e叹词(取英语叹词exclamation的第1个字母。
)
eng外语
f方位词(取汉字「方」的声母。
)
g语素(绝大多数语素都能作为合成词的「词根」,取汉字「根」的声母。
)
h前接成分(取英语head的第1个字母。
)
i成语(取英语成语idiom的第1个字母。
)
j简称略语(取汉字「简」的声母。
)
k后接成分
l习用语(习用语尚未成为成语,有点「临时性」,取「临」的声母。
)
m数词(取英语numeral的第3个字母,n,u已有他用。
)
mg数语素
mq数词*
n名词(取英语名词noun的第1个字母。
)
ng名语素(名词性语素,名词代码为n,语素代码g前面置以n。
)
nr人名(名词代码n和「人(ren)」的声母并在一起。
)
nrfg名词*
nrt名词*
ns地名(名词代码n和处所词代码s并在一起。
)
nt机构团体(「团」的声母为t,名词代码n和t并在一起。
)
nz其他专名(「专」的声母的第1个字母为z,名词代码n和z并在一起。
)
o拟声词(取英语拟声词onomatopoeia的第1个字母。
)
p介词(取英语介词prepositional的第1个字母。
)
q量词(取英语quantity的第1个字母。
)
r代词(取英语代词pronoun的第2个字母,因p已用于介词。
)
rg代词语素
rr代词*
rz代词*
s处所词(取英语space的第1个字母。
)
t时间词(取英语time的第1个字母。
)
tg时语素(时间词性语素,时间词代码为t,在语素的代码g前面置以t。
)
u助词(取英语助词auxiliary的第2个字母,因a已用于形容词。
)
ud助词*
ug助词*
uj助词*
ul助词*
uv助词*
uz助词*
v动词(取英语动词verb的第一个字母。
)
vd副动词(直接作状语的动词,动词和副词的代码并在一起。
)
vg动语素
vi动词*
vn名动词(指具有名词功能的动词,动词和名词的代码并在一起。
)
vq动词*
w标点符号
x非语素字(非语素字只是一个符号,字母x通常用于代表未知数、符号。
)
y语气词(取汉字「语」的声母。
)
z状态词(取汉字「状」的声母的前一个字母。
)
zg状态词*
DonateIfyoufindfuku-mluseful,pleaseconsideradonation.Thankyou!bitcoin:1BbihQU3CzSdyLSP9bvQq7Pi1z1jTdAaq9eth:0x92DA3F837bf2F79D422bb8CEAC632208F94cdE33LicenseTheMITLicense(MIT)Copyright(c)2015fukuballPermissionisherebygranted,freeofcharge,toanypersonobtainingacopyofthissoftwareandassociateddocumentationfiles(the"Software"),todealintheSoftwarewithoutrestriction,includingwithoutlimitationtherightstouse,copy,modify,merge,publish,distribute,sublicense,and/orsellcopiesoftheSoftware,andtopermitpersonstowhomtheSoftwareisfurnishedtodoso,subjecttothefollowingconditions:TheabovecopyrightnoticeandthispermissionnoticeshallbeincludedinallcopiesorsubstantialportionsoftheSoftware.THESOFTWAREISPROVIDED"ASIS",WITHOUTWARRANTYOFANYKIND,EXPRESSORIMPLIED,INCLUDINGBUTNOTLIMITEDTOTHEWARRANTIESOFMERCHANTABILITY,FITNESSFORAPARTICULARPURPOSEANDNONINFRINGEMENT.INNOEVENTSHALLTHEAUTHORSORCOPYRIGHTHOLDERSBELIABLEFORANYCLAIM,DAMAGESOROTHERLIABILITY,WHETHERINANACTIONOFCONTRACT,TORTOROTHERWISE,ARISINGFROM,OUTOFORINCONNECTIONWITHTHESOFTWAREORTHEUSEOROTHERDEALINGSINTHESOFTWARE.Author: fukuballSourceCode: https://github.com/fukuball/jieba-phpLicense:MITLicense#php
WhatisGEEK
BuddhaCommunity
bindusingh
1647351133
ProcedureToBecomeAnAirHostess/CabinCrew
Minimumeducationalrequired–10+2passedinanystreamfromarecognizedboard.Theagelimitis18to25years.Itmaydifferfromoneairlinetoanother! PhysicalandMedicalstandards–Femalesmustbe157cminheightandmalesmustbe170cminheight(formales).Thisparametermayvaryfromoneairlinetowardthenext.Thecandidate'sbodyweightshouldbeproportionaltohisorherheight.Candidateswithblemish-freeskinwillhaveanadvantage.Physicalfitnessisrequiredofthecandidate.Eyesightrequirements:aminimumof6/9visionisrequired.Manyairlinesallowapplicantstofixtheirvisionto20/20!Thereshouldbenohistoryofmentaldiseaseinthecandidate'spast.Thecandidateshouldnothaveasignificantcardiovascularcondition.Youcanbecomeanairhostessifyoumeetcertaincriteria,suchasaminimumeducationallevel,anagelimit,languageability,andphysicalcharacteristics.Ascanbeseenfromtheprecedinginformation,a10+2passistheminimaleducationalneedforbecominganairhostessinIndia.So,ifyouhavea10+2certificatefromarecognizedboard,youarequalifiedtoapplyforaninterviewforairhostesspositions!Youcanstillapplyforthisjobifyouhaveahigherqualification(suchasaBachelor'sorMaster'sDegree).SoThatImayrecommend,joiningSpecialPersonalitydevelopmentcourses,alearninggallerythatoffersaviationindustrycoursesby AEROFLYINTERNATIONALAVIATIONACADEMYinCHANDIGARH.Theyprovideextrasessionsincludedinthecourseandconducttheentirecoursein6monthscoveringalltopicsatanaffordablepricingstructure.Theypayparticularattentiontoeachandeveryaspirantandpreparethemaccordingtoairlinecriteria.SobeapartofitandgiveyouraspirationsSobeapartofitandgiveyouraspirationswings.ReadMore: SafetyandEmergencyProceduresofAviation|| OperationsofTravelandHospitalityManagement|| IntellectualLanguageandInterviewTraining || PremiereCoachingForRetailandMassCommunication|| IntroductoryCosmetologyandTressStyling || AircraftGroundPersonnelCompetentCourseFormoreinformation:Visitusat: https://aerofly.co.inPhone : wa.me//+919988887551 Address: AeroflyInternationalAviationAcademy,SCO68,4thFloor,Sector17-D, Chandigarh,Pin160017 Email: [email protected] #airhostessinstituteinDelhi, #airhostessinstituteinChandigarh, #airhostessinstitutenearme,#bestairhostessinstituteinIndia,#airhostessinstitute,#bestairhostessinstituteinDelhi, #airhostessinstituteinIndia, #bestairhostessinstituteinIndia,#airhostesstraininginstitutefees, #top10airhostesstraininginstituteinIndia, #governmentairhostesstraininginstituteinIndia, #bestairhostesstraininginstituteintheworld,#airhostesstraininginstitutefees, #cabincrewcoursefees, #cabincrewcoursedurationandfees, #bestcabincrewtraininginstituteinDelhi, #cabincrewcoursesafter12th,#bestcabincrewtraininginstituteinDelhi, #cabincrewtraininginstituteinDelhi, #cabincrewtraininginstituteinIndia,#cabincrewtraininginstitutenearme,#bestcabincrewtraininginstituteinIndia,#bestcabincrewtraininginstituteinDelhi, #bestcabincrewtraininginstituteintheworld, #governmentcabincrewtraininginstitute
WebCluesInfotech
1617276472
HirePHPDeveloper-BestPHPWebFrameworksforWebDevelopment
AframeworkthatcandrasticallycutdowntherequirementtowriteoriginalcodetodevelopthewebappsasperyourrequirementisPHPFramework.PHPframeworksoffercodelibrariesforcommonlyusedfunctionstoreducethedevelopmenttime.
WanttousePHPWebFrameworksforyourwebapplications?
WebCluesInfotechoffersaservicetohirededicatedPHPdevelopersforallofthebelow-mentionedframeworks
LaravelDeveloper
CodeigniterDeveloper
YiiDeveloper
ZendDeveloper
CakePHPDeveloper
CorePHPDeveloper
NotsurewhichframeworktouseforyourPHPwebapplication?
Contactus
ScheduleInterviewwithPHPDeveloperhttps://bit.ly/3dsTWf0
Email:[email protected]
#hirephpdeveloper#hirephpwebdevelopers#hirephpdeveloperin2021#hirephpdevelopers&dedicatedphpprogrammers#hirephpdevelopersindia#hireandoutsourcefreelancephpdevelopers
VeronicaRoob
1652604180
JiebaPHP:TheBestPHPChineseWordSegmentationModule
jieba-php"結巴"中文分詞:做最好的PHP中文分詞、中文斷詞組件,目前翻譯版本為jieba-0.33版本,未來再慢慢往上升級,效能也需要再改善,請有興趣的開發者一起加入開發!若想使用Python版本請前往fxsjy/jieba現在已經可以支援繁體中文!只要將字典切換為big模式即可!"Jieba"(Chinesefor"tostutter")Chinesetextsegmentation:builttobethebestPHPChinesewordsegmentationmodule.ScrolldownforEnglishdocumentation.線上展示網站網址:http://jieba-php.fukuball.com網站原始碼:https://github.com/fukuball/jieba-php.fukuball.comFeature支持三種分詞模式:1)默認精確模式,試圖將句子最精確地切開,適合文本分析;2)全模式,把句子中所有的可以成詞的詞語都掃描出來,但是不能解決歧義。
(需要充足的字典) 搜尋引擎模式,在精確模式的基礎上,對長詞再次切分,提高召回率,適合用於搜尋引擎分詞。
支持繁體斷詞支持自定義詞典Usage自動安裝:使用composer安裝後,透過autoload引用代碼示例composerrequirefukuball/jieba-php:dev-master
代碼示例require_once"/path/to/your/vendor/autoload.php";
手動安裝:將jieba-php放置適當目錄後,透過require_once引用代碼示例require_once"/path/to/your/vendor/multi-array/MultiArray.php";
require_once"/path/to/your/vendor/multi-array/Factory/MultiArrayFactory.php";
require_once"/path/to/your/class/Jieba.php";
require_once"/path/to/your/class/Finalseg.php";
Algorithm基於Trie樹結構實現高效的詞圖掃描,生成句子中漢字所有可能成詞情況所構成的有向無環圖(DAG)採用了動態規劃查找最大概率路徑,找出基於詞頻的最大切分組合對於未登錄詞,採用了基於漢字成詞能力的HMM模型,使用了Viterbi算法BEMS的解釋https://github.com/fxsjy/jieba/issues/7Interface組件只提供jieba.cut方法用於分詞cut方法接受兩個輸入參數:1)第一個參數為需要分詞的字符串2)cut_all參數用來控制分詞模式待分詞的字符串可以是utf-8字符串jieba.cut返回的結構是一個可迭代的array功能1):分词cut方法接受想個輸入參數:1)第一個參數為需要分詞的字符串2)cut_all參數用來控制分詞模式cutForSearch方法接受一個參數:需要分詞的字符串,該方法適合用於搜索引擎構建倒排索引的分詞,粒度比較細注意:待分詞的字符串是utf-8字符串cut以及cutForSearch返回的結構是一個可迭代的array代碼示例(Tutorial)ini_set('memory_limit','1024M');
require_once"/path/to/your/vendor/multi-array/MultiArray.php";
require_once"/path/to/your/vendor/multi-array/Factory/MultiArrayFactory.php";
require_once"/path/to/your/class/Jieba.php";
require_once"/path/to/your/class/Finalseg.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
Jieba::init();
Finalseg::init();
$seg_list=Jieba::cut("怜香惜玉也得要看对象啊!");
var_dump($seg_list);
$seg_list=Jieba::cut("我来到北京清华大学",true);
var_dump($seg_list);#全模式
$seg_list=Jieba::cut("我来到北京清华大学",false);
var_dump($seg_list);#默認精確模式
$seg_list=Jieba::cut("他来到了网易杭研大厦");
var_dump($seg_list);
$seg_list=Jieba::cutForSearch("小明硕士毕业于中国科学院计算所,后在日本京都大学深造");#搜索引擎模式
var_dump($seg_list);
Output:array(7){
[0]=>
string(12)"怜香惜玉"
[1]=>
string(3)"也"
[2]=>
string(3)"得"
[3]=>
string(3)"要"
[4]=>
string(3)"看"
[5]=>
string(6)"对象"
[6]=>
string(3)"啊"
}
FullMode:
array(15){
[0]=>
string(3)"我"
[1]=>
string(3)"来"
[2]=>
string(6)"来到"
[3]=>
string(3)"到"
[4]=>
string(3)"北"
[5]=>
string(6)"北京"
[6]=>
string(3)"京"
[7]=>
string(3)"清"
[8]=>
string(6)"清华"
[9]=>
string(12)"清华大学"
[10]=>
string(3)"华"
[11]=>
string(6)"华大"
[12]=>
string(3)"大"
[13]=>
string(6)"大学"
[14]=>
string(3)"学"
}
DefaultMode:
array(4){
[0]=>
string(3)"我"
[1]=>
string(6)"来到"
[2]=>
string(6)"北京"
[3]=>
string(12)"清华大学"
}
array(6){
[0]=>
string(3)"他"
[1]=>
string(6)"来到"
[2]=>
string(3)"了"
[3]=>
string(6)"网易"
[4]=>
string(6)"杭研"
[5]=>
string(6)"大厦"
}
(此處,“杭研“並沒有在詞典中,但是也被Viterbi算法識別出來了)
SearchEngineMode:
array(18){
[0]=>
string(6)"小明"
[1]=>
string(6)"硕士"
[2]=>
string(6)"毕业"
[3]=>
string(3)"于"
[4]=>
string(6)"中国"
[5]=>
string(6)"科学"
[6]=>
string(6)"学院"
[7]=>
string(9)"科学院"
[8]=>
string(15)"中国科学院"
[9]=>
string(6)"计算"
[10]=>
string(9)"计算所"
[11]=>
string(3)"后"
[12]=>
string(3)"在"
[13]=>
string(6)"日本"
[14]=>
string(6)"京都"
[15]=>
string(6)"大学"
[16]=>
string(18)"日本京都大学"
[17]=>
string(6)"深造"
}
功能2):添加自定義詞典開發者可以指定自己自定義的詞典,以便包含jieba詞庫裡沒有的詞。
雖然jieba有新詞識別能力,但是自行添加新詞可以保證更高的正確率用法:Jieba::loadUserDict(file_name)#file_name為自定義詞典的絕對路徑詞典格式和dict.txt一樣,一個詞佔一行;每一行分為三部分,一部分為詞語,一部分為詞頻,一部分為詞性,用空格隔開範例:云计算5n李小福2n创新办3n之前:李小福/是/创新/办/主任/也/是/云/计算/方面/的/专家/加載自定義詞庫後: 李小福/是/创新办/主任/也/是/云计算/方面/的/专家/說明:"通过用户自定义词典来增强歧义纠错能力"---https://github.com/fxsjy/jieba/issues/14自定義詞典:https://github.com/fukuball/jieba-php/blob/master/src/dict/user_dict.txt功能3):關鍵詞提取JiebaAnalyse::extractTags($content,$top_k)content為待提取的文本top_k為返回幾個TF/IDF權重最大的關鍵詞,默認值為20可使用setStopWords增加自定義stopwords代碼示例(關鍵詞提取)ini_set('memory_limit','600M');
require_once"/path/to/your/vendor/multi-array/MultiArray.php";
require_once"/path/to/your/vendor/multi-array/Factory/MultiArrayFactory.php";
require_once"/path/to/your/class/Jieba.php";
require_once"/path/to/your/class/Finalseg.php";
require_once"/path/to/your/class/JiebaAnalyse.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
useFukuball\Jieba\JiebaAnalyse;
Jieba::init(array('mode'=>'test','dict'=>'small'));
Finalseg::init();
JiebaAnalyse::init();
$top_k=10;
$content=file_get_contents("/path/to/your/dict/lyric.txt","r");
$tags=JiebaAnalyse::extractTags($content,$top_k);
var_dump($tags);
JiebaAnalyse::setStopWords('/path/to/your/dict/stop_words.txt');
$tags=JiebaAnalyse::extractTags($content,$top_k);
var_dump($tags);
Output:array(10){
'沒有'=>
double(1.0592831964595)
'所謂'=>
double(0.90795702553671)
'是否'=>
double(0.66385043195443)
'一般'=>
double(0.54607060161899)
'雖然'=>
double(0.30265234184557)
'來說'=>
double(0.30265234184557)
'肌迫'=>
double(0.30265234184557)
'退縮'=>
double(0.30265234184557)
'矯作'=>
double(0.30265234184557)
'怯懦'=>
double(0.24364586159392)
}
array(10){
'所謂'=>
double(1.1569129841516)
'一般'=>
double(0.69579963754677)
'矯作'=>
double(0.38563766138387)
'來說'=>
double(0.38563766138387)
'退縮'=>
double(0.38563766138387)
'雖然'=>
double(0.38563766138387)
'肌迫'=>
double(0.38563766138387)
'怯懦'=>
double(0.31045198493419)
'隨便說說'=>
double(0.19281883069194)
'一場'=>
double(0.19281883069194)
}
功能4):詞性分詞詞性說明:https://gist.github.com/luw2007/6016931代碼示例(Tutorial)ini_set('memory_limit','600M');
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/MultiArray.php";
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/Factory/MultiArrayFactory.php";
require_oncedirname(dirname(__FILE__))."/class/Jieba.php";
require_oncedirname(dirname(__FILE__))."/class/Finalseg.php";
require_oncedirname(dirname(__FILE__))."/class/Posseg.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
useFukuball\Jieba\Posseg;
Jieba::init();
Finalseg::init();
Posseg::init();
$seg_list=Posseg::cut("这是一个伸手不见五指的黑夜。
我叫孙悟空,我爱北京,我爱Python和C++。
");
var_dump($seg_list);
Output:array(21){
[0]=>
array(2){
["word"]=>
string(3)"这"
["tag"]=>
string(1)"r"
}
[1]=>
array(2){
["word"]=>
string(3)"是"
["tag"]=>
string(1)"v"
}
[2]=>
array(2){
["word"]=>
string(6)"一个"
["tag"]=>
string(1)"m"
}
[3]=>
array(2){
["word"]=>
string(18)"伸手不见五指"
["tag"]=>
string(1)"i"
}
[4]=>
array(2){
["word"]=>
string(3)"的"
["tag"]=>
string(2)"uj"
}
[5]=>
array(2){
["word"]=>
string(6)"黑夜"
["tag"]=>
string(1)"n"
}
[6]=>
array(2){
["word"]=>
string(3)"。
"
["tag"]=>
string(1)"x"
}
[7]=>
array(2){
["word"]=>
string(3)"我"
["tag"]=>
string(1)"r"
}
[8]=>
array(2){
["word"]=>
string(3)"叫"
["tag"]=>
string(1)"v"
}
[9]=>
array(2){
["word"]=>
string(9)"孙悟空"
["tag"]=>
string(2)"nr"
}
[10]=>
array(2){
["word"]=>
string(3)","
["tag"]=>
string(1)"x"
}
[11]=>
array(2){
["word"]=>
string(3)"我"
["tag"]=>
string(1)"r"
}
[12]=>
array(2){
["word"]=>
string(3)"爱"
["tag"]=>
string(1)"v"
}
[13]=>
array(2){
["word"]=>
string(6)"北京"
["tag"]=>
string(2)"ns"
}
[14]=>
array(2){
["word"]=>
string(3)","
["tag"]=>
string(1)"x"
}
[15]=>
array(2){
["word"]=>
string(3)"我"
["tag"]=>
string(1)"r"
}
[16]=>
array(2){
["word"]=>
string(3)"爱"
["tag"]=>
string(1)"v"
}
[17]=>
array(2){
["word"]=>
string(6)"Python"
["tag"]=>
string(3)"eng"
}
[18]=>
array(2){
["word"]=>
string(3)"和"
["tag"]=>
string(1)"c"
}
[19]=>
array(2){
["word"]=>
string(3)"C++"
["tag"]=>
string(3)"eng"
}
[20]=>
array(2){
["word"]=>
string(3)"。
"
["tag"]=>
string(1)"x"
}
}
功能5):切換成繁體字典代碼示例(Tutorial)ini_set('memory_limit','1024M');
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/MultiArray.php";
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/Factory/MultiArrayFactory.php";
require_oncedirname(dirname(__FILE__))."/class/Jieba.php";
require_oncedirname(dirname(__FILE__))."/class/Finalseg.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
Jieba::init(array('mode'=>'default','dict'=>'big'));
Finalseg::init();
$seg_list=Jieba::cut("怜香惜玉也得要看对象啊!");
var_dump($seg_list);
$seg_list=Jieba::cut("憐香惜玉也得要看對象啊!");
var_dump($seg_list);
Output:array(7){
[0]=>
string(12)"怜香惜玉"
[1]=>
string(3)"也"
[2]=>
string(3)"得"
[3]=>
string(3)"要"
[4]=>
string(3)"看"
[5]=>
string(6)"对象"
[6]=>
string(3)"啊"
}
array(7){
[0]=>
string(12)"憐香惜玉"
[1]=>
string(3)"也"
[2]=>
string(3)"得"
[3]=>
string(3)"要"
[4]=>
string(3)"看"
[5]=>
string(6)"對象"
[6]=>
string(3)"啊"
}
功能5):切換成繁體字典代碼示例(Tutorial)ini_set('memory_limit','1024M');
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/MultiArray.php";
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/Factory/MultiArrayFactory.php";
require_oncedirname(dirname(__FILE__))."/class/Jieba.php";
require_oncedirname(dirname(__FILE__))."/class/Finalseg.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
Jieba::init(array('mode'=>'default','dict'=>'big'));
Finalseg::init();
$seg_list=Jieba::cut("怜香惜玉也得要看对象啊!");
var_dump($seg_list);
$seg_list=Jieba::cut("憐香惜玉也得要看對象啊!");
var_dump($seg_list);
Output:array(7){
[0]=>
string(12)"怜香惜玉"
[1]=>
string(3)"也"
[2]=>
string(3)"得"
[3]=>
string(3)"要"
[4]=>
string(3)"看"
[5]=>
string(6)"对象"
[6]=>
string(3)"啊"
}
array(7){
[0]=>
string(12)"憐香惜玉"
[1]=>
string(3)"也"
[2]=>
string(3)"得"
[3]=>
string(3)"要"
[4]=>
string(3)"看"
[5]=>
string(6)"對象"
[6]=>
string(3)"啊"
}
功能6):保留日语或者朝鲜语原文不进行过滤代碼示例(Tutorial)ini_set('memory_limit','1024M');
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/MultiArray.php";
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/Factory/MultiArrayFactory.php";
require_oncedirname(dirname(__FILE__))."/class/Jieba.php";
require_oncedirname(dirname(__FILE__))."/class/Finalseg.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
Jieba::init(array('cjk'=>'all'));
Finalseg::init();
$seg_list=Jieba::cut("한국어또는조선말은제주특별자치도를제외한한반도및그부속도서와한민족거주지역에서쓰이는언어로");
var_dump($seg_list);
$seg_list=Jieba::cut("日本語は、主に日本国内や日本人同士の間で使われている言語である。
");
var_dump($seg_list);
//加载日语词库可以对日语进行简单的分词
Jieba::loadUserDict("/path/to/your/japanese/dict.txt");
$seg_list=Jieba::cut("日本語は、主に日本国内や日本人同士の間で使われている言語である。
");
var_dump($seg_list);
Output:array(15){
[0]=>
string(9)"한국어"
[1]=>
string(6)"또는"
[2]=>
string(12)"조선말은"
[3]=>
string(24)"제주특별자치도를"
[4]=>
string(9)"제외한"
[5]=>
string(9)"한반도"
[6]=>
string(3)"및"
[7]=>
string(3)"그"
[8]=>
string(6)"부속"
[9]=>
string(9)"도서와"
[10]=>
string(9)"한민족"
[11]=>
string(6)"거주"
[12]=>
string(12)"지역에서"
[13]=>
string(9)"쓰이는"
[14]=>
string(9)"언어로"
}
array(21){
[0]=>
string(6)"日本"
[1]=>
string(3)"語"
[2]=>
string(3)"は"
[3]=>
string(3)"主"
[4]=>
string(3)"に"
[5]=>
string(6)"日本"
[6]=>
string(6)"国内"
[7]=>
string(3)"や"
[8]=>
string(6)"日本"
[9]=>
string(3)"人"
[10]=>
string(6)"同士"
[11]=>
string(3)"の"
[12]=>
string(3)"間"
[13]=>
string(3)"で"
[14]=>
string(3)"使"
[15]=>
string(3)"わ"
[16]=>
string(6)"れて"
[17]=>
string(6)"いる"
[18]=>
string(6)"言語"
[19]=>
string(3)"で"
[20]=>
string(6)"ある"
}
array(17){
[0]=>
string(9)"日本語"
[1]=>
string(3)"は"
[2]=>
string(6)"主に"
[3]=>
string(9)"日本国"
[4]=>
string(3)"内"
[5]=>
string(3)"や"
[6]=>
string(9)"日本人"
[7]=>
string(6)"同士"
[8]=>
string(3)"の"
[9]=>
string(3)"間"
[10]=>
string(3)"で"
[11]=>
string(3)"使"
[12]=>
string(3)"わ"
[13]=>
string(6)"れて"
[14]=>
string(6)"いる"
[15]=>
string(6)"言語"
[16]=>
string(9)"である"
}
功能7):返回詞語在原文的起止位置代碼示例(Tutorial)ini_set('memory_limit','1024M');
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/MultiArray.php";
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/Factory/MultiArrayFactory.php";
require_oncedirname(dirname(__FILE__))."/class/Jieba.php";
require_oncedirname(dirname(__FILE__))."/class/Finalseg.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
Jieba::init(array('mode'=>'test','dict'=>'big'));
Finalseg::init();
$seg_list=Jieba::tokenize("永和服装饰品有限公司");
var_dump($seg_list);
Output:array(4){
[0]=>
array(3){
'word'=>
string(6)"永和"
'start'=>
int(0)
'end'=>
int(2)
}
[1]=>
array(3){
'word'=>
string(6)"服装"
'start'=>
int(2)
'end'=>
int(4)
}
[2]=>
array(3){
'word'=>
string(6)"饰品"
'start'=>
int(4)
'end'=>
int(6)
}
[3]=>
array(3){
'word'=>
string(12)"有限公司"
'start'=>
int(6)
'end'=>
int(10)
}
}
其他詞典佔用內容較小的詞典https://github.com/fukuball/jieba-php/blob/master/src/dict/dict.small.txt支持繁體斷詞的詞典https://github.com/fukuball/jieba-php/blob/master/src/dict/dict.big.txt常見問題模型的數據是如何生成的?https://github.com/fxsjy/jieba/issues/7這個庫的授權是?https://github.com/fxsjy/jieba/issues/2jieba-phpEnglishDocumentOnlineDemoDemoSiteUrl:http://jieba-php.fukuball.comDemoSiteRepo:https://github.com/fukuball/jieba-php.fukuball.comFeatureSupportthreetypesofsegmentationmode: AccurateMode,attempttocutthesentenceintothemostaccuratesegmentation,whichissuitablefortextanalysis; FullMode,breakthewordsofthesentenceintowordsscanned SearchEngineMode,basedontheAccurateMode,withanattempttocutthelongwordsintoseveralshortwords,whichcanenhancetherecallrateUsageInstallation:Usecomposertoinstalljieba-php,thenrequiretheautoloadfiletousejieba-php.AlgorithmBasedontheTrietreestructuretoachieveefficientwordgraphscanning;sentencesusingChinesecharactersconstituteadirectedacyclicgraph(DAG).Employsmemorysearchtocalculatethemaximumprobabilitypath,inordertoidentifythemaximumtangentialpointsbasedonwordfrequencycombination.Forunknownwords,thecharacterpositionHMM-basedmodelisused,usingtheViterbialgorithm.ThemeaningofBEMShttps://github.com/fxsjy/jieba/issues/7.InterfaceThecutmethodacceptstwoparameters:1)firstparameteristhestringtosegmentation2)thesecondparametercut_alltocontrolsegmentationmode.Thestringtosegmentationmayuseutf-8string.cutForSearchaccpetsonlyonparameter:thestringthatrequiressegmentation,anditwillcutthesentenceintoshortwordscutandcutForSearchreturnansegmentedarray.Function1)SegmentationExample(Tutorial)ini_set('memory_limit','1024M');
require_once"/path/to/your/vendor/multi-array/MultiArray.php";
require_once"/path/to/your/vendor/multi-array/Factory/MultiArrayFactory.php";
require_once"/path/to/your/class/Jieba.php";
require_once"/path/to/your/class/Finalseg.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
Jieba::init();
Finalseg::init();
$seg_list=Jieba::cut("怜香惜玉也得要看对象啊!");
var_dump($seg_list);
seg_list=jieba.cut("我来到北京清华大学",true)
var_dump($seg_list);#全模式
seg_list=jieba.cut("我来到北京清华大学",false)
var_dump($seg_list);#默認精確模式
seg_list=jieba.cut("他来到了网易杭研大厦")
var_dump($seg_list);
seg_list=jieba.cut_for_search("小明硕士毕业于中国科学院计算所,后在日本京都大学深造")#搜索引擎模式
var_dump($seg_list);
Output:array(7){
[0]=>
string(12)"怜香惜玉"
[1]=>
string(3)"也"
[2]=>
string(3)"得"
[3]=>
string(3)"要"
[4]=>
string(3)"看"
[5]=>
string(6)"对象"
[6]=>
string(3)"啊"
}
FullMode:
array(15){
[0]=>
string(3)"我"
[1]=>
string(3)"来"
[2]=>
string(6)"来到"
[3]=>
string(3)"到"
[4]=>
string(3)"北"
[5]=>
string(6)"北京"
[6]=>
string(3)"京"
[7]=>
string(3)"清"
[8]=>
string(6)"清华"
[9]=>
string(12)"清华大学"
[10]=>
string(3)"华"
[11]=>
string(6)"华大"
[12]=>
string(3)"大"
[13]=>
string(6)"大学"
[14]=>
string(3)"学"
}
DefaultMode:
array(4){
[0]=>
string(3)"我"
[1]=>
string(6)"来到"
[2]=>
string(6)"北京"
[3]=>
string(12)"清华大学"
}
array(6){
[0]=>
string(3)"他"
[1]=>
string(6)"来到"
[2]=>
string(3)"了"
[3]=>
string(6)"网易"
[4]=>
string(6)"杭研"
[5]=>
string(6)"大厦"
}
(此處,“杭研“並沒有在詞典中,但是也被Viterbi算法識別出來了)
SearchEngineMode:
array(18){
[0]=>
string(6)"小明"
[1]=>
string(6)"硕士"
[2]=>
string(6)"毕业"
[3]=>
string(3)"于"
[4]=>
string(6)"中国"
[5]=>
string(6)"科学"
[6]=>
string(6)"学院"
[7]=>
string(9)"科学院"
[8]=>
string(15)"中国科学院"
[9]=>
string(6)"计算"
[10]=>
string(9)"计算所"
[11]=>
string(3)"后"
[12]=>
string(3)"在"
[13]=>
string(6)"日本"
[14]=>
string(6)"京都"
[15]=>
string(6)"大学"
[16]=>
string(18)"日本京都大学"
[17]=>
string(6)"深造"
}
Function2)AddacustomdictionaryDeveloperscanspecifytheirowncustomdictionarytoincludeinthejiebathesaurus.jiebahastheabilitytoidentifynewwords,butaddingyourownnewwordscanensureahigherrateofcorrectsegmentation.Usage:Jieba::loadUserDict(file_name)#file_nameisacustomdictionarypath.Thedictionaryformatisthesameasthatofdict.txt:onewordperline;eachlineisdividedintotwoparts,thefirstistheworditself,theotheristhewordfrequency,separatedbyaspace.Example:云计算5李小福2创新办3之前:李小福/是/创新/办/主任/也/是/云/计算/方面/的/专家/加載自定義詞庫後: 李小福/是/创新办/主任/也/是/云计算/方面/的/专家/Function3)KeywordExtractionJiebaAnalyse::extractTags($content,$top_k)content:thetexttobeextractedtop_k:toreturnseveralTF/IDFweightsforthebiggestkeywords,thedefaultvalueis20Example(keywordextraction)ini_set('memory_limit','600M');
require_once"/path/to/your/vendor/multi-array/MultiArray.php";
require_once"/path/to/your/vendor/multi-array/Factory/MultiArrayFactory.php";
require_once"/path/to/your/class/Jieba.php";
require_once"/path/to/your/class/Finalseg.php";
require_once"/path/to/your/class/JiebaAnalyse.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
useFukuball\Jieba\JiebaAnalyse;
Jieba::init(array('mode'=>'test','dict'=>'small'));
Finalseg::init();
JiebaAnalyse::init();
$top_k=10;
$content=file_get_contents("/path/to/your/dict/lyric.txt","r");
$tags=JiebaAnalyse::extractTags($content,$top_k);
var_dump($tags);
Output:array(10){
["是否"]=>
float(1.2196321889395)
["一般"]=>
float(1.0032459890209)
["肌迫"]=>
float(0.64654314660465)
["怯懦"]=>
float(0.44762844339349)
["藉口"]=>
float(0.32327157330233)
["逼不得已"]=>
float(0.32327157330233)
["不安全感"]=>
float(0.26548304656279)
["同感"]=>
float(0.23929673812326)
["有把握"]=>
float(0.21043366018744)
["空洞"]=>
float(0.20598261709442)
}
Function4)WordSegmentationandTaggingWordTaggingMeaning:https://gist.github.com/luw2007/6016931Example(wordtagging)ini_set('memory_limit','600M');
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/MultiArray.php";
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/Factory/MultiArrayFactory.php";
require_oncedirname(dirname(__FILE__))."/class/Jieba.php";
require_oncedirname(dirname(__FILE__))."/class/Finalseg.php";
require_oncedirname(dirname(__FILE__))."/class/Posseg.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
useFukuball\Jieba\Posseg;
Jieba::init();
Finalseg::init();
Posseg::init();
$seg_list=Posseg::cut("这是一个伸手不见五指的黑夜。
我叫孙悟空,我爱北京,我爱Python和C++。
");
var_dump($seg_list);
Output:array(21){
[0]=>
array(2){
["word"]=>
string(3)"这"
["tag"]=>
string(1)"r"
}
[1]=>
array(2){
["word"]=>
string(3)"是"
["tag"]=>
string(1)"v"
}
[2]=>
array(2){
["word"]=>
string(6)"一个"
["tag"]=>
string(1)"m"
}
[3]=>
array(2){
["word"]=>
string(18)"伸手不见五指"
["tag"]=>
string(1)"i"
}
[4]=>
array(2){
["word"]=>
string(3)"的"
["tag"]=>
string(2)"uj"
}
[5]=>
array(2){
["word"]=>
string(6)"黑夜"
["tag"]=>
string(1)"n"
}
[6]=>
array(2){
["word"]=>
string(3)"。
"
["tag"]=>
string(1)"w"
}
[7]=>
array(2){
["word"]=>
string(3)"我"
["tag"]=>
string(1)"r"
}
[8]=>
array(2){
["word"]=>
string(3)"叫"
["tag"]=>
string(1)"v"
}
[9]=>
array(2){
["word"]=>
string(9)"孙悟空"
["tag"]=>
string(2)"nr"
}
[10]=>
array(2){
["word"]=>
string(3)","
["tag"]=>
string(1)"w"
}
[11]=>
array(2){
["word"]=>
string(3)"我"
["tag"]=>
string(1)"r"
}
[12]=>
array(2){
["word"]=>
string(3)"爱"
["tag"]=>
string(1)"v"
}
[13]=>
array(2){
["word"]=>
string(6)"北京"
["tag"]=>
string(2)"ns"
}
[14]=>
array(2){
["word"]=>
string(3)","
["tag"]=>
string(1)"w"
}
[15]=>
array(2){
["word"]=>
string(3)"我"
["tag"]=>
string(1)"r"
}
[16]=>
array(2){
["word"]=>
string(3)"爱"
["tag"]=>
string(1)"v"
}
[17]=>
array(2){
["word"]=>
string(6)"Python"
["tag"]=>
string(3)"eng"
}
[18]=>
array(2){
["word"]=>
string(3)"和"
["tag"]=>
string(1)"c"
}
[19]=>
array(2){
["word"]=>
string(3)"C++"
["tag"]=>
string(3)"eng"
}
[20]=>
array(2){
["word"]=>
string(3)"。
"
["tag"]=>
string(1)"w"
}
}
Function5):UseTraditionalChineseExample(Tutorial)ini_set('memory_limit','1024M');
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/MultiArray.php";
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/Factory/MultiArrayFactory.php";
require_oncedirname(dirname(__FILE__))."/class/Jieba.php";
require_oncedirname(dirname(__FILE__))."/class/Finalseg.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
Jieba::init(array('mode'=>'default','dict'=>'big'));
Finalseg::init();
$seg_list=Jieba::cut("怜香惜玉也得要看对象啊!");
var_dump($seg_list);
$seg_list=Jieba::cut("憐香惜玉也得要看對象啊!");
var_dump($seg_list);
Output:array(7){
[0]=>
string(12)"怜香惜玉"
[1]=>
string(3)"也"
[2]=>
string(3)"得"
[3]=>
string(3)"要"
[4]=>
string(3)"看"
[5]=>
string(6)"对象"
[6]=>
string(3)"啊"
}
array(7){
[0]=>
string(12)"憐香惜玉"
[1]=>
string(3)"也"
[2]=>
string(3)"得"
[3]=>
string(3)"要"
[4]=>
string(3)"看"
[5]=>
string(6)"對象"
[6]=>
string(3)"啊"
}
Function6):KeepingJapaneseorKoreanoriginaltextExample(Tutorial)ini_set('memory_limit','1024M');
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/MultiArray.php";
require_oncedirname(dirname(__FILE__))."/vendor/multi-array/Factory/MultiArrayFactory.php";
require_oncedirname(dirname(__FILE__))."/class/Jieba.php";
require_oncedirname(dirname(__FILE__))."/class/Finalseg.php";
useFukuball\Jieba\Jieba;
useFukuball\Jieba\Finalseg;
Jieba::init(array('cjk'=>'all'));
Finalseg::init();
$seg_list=Jieba::cut("한국어또는조선말은제주특별자치도를제외한한반도및그부속도서와한민족거주지역에서쓰이는언어로");
var_dump($seg_list);
$seg_list=Jieba::cut("日本語は、主に日本国内や日本人同士の間で使われている言語である。
");
var_dump($seg_list);
//LoadingcustomJapanesedictionarycandoasimplewordsegmentation
Jieba::loadUserDict("/path/to/your/japanese/dict.txt");
$seg_list=Jieba::cut("日本語は、主に日本国内や日本人同士の間で使われている言語である。
");
var_dump($seg_list);
Output:array(15){
[0]=>
string(9)"한국어"
[1]=>
string(6)"또는"
[2]=>
string(12)"조선말은"
[3]=>
string(24)"제주특별자치도를"
[4]=>
string(9)"제외한"
[5]=>
string(9)"한반도"
[6]=>
string(3)"및"
[7]=>
string(3)"그"
[8]=>
string(6)"부속"
[9]=>
string(9)"도서와"
[10]=>
string(9)"한민족"
[11]=>
string(6)"거주"
[12]=>
string(12)"지역에서"
[13]=>
string(9)"쓰이는"
[14]=>
string(9)"언어로"
}
array(21){
[0]=>
string(6)"日本"
[1]=>
string(3)"語"
[2]=>
string(3)"は"
[3]=>
string(3)"主"
[4]=>
string(3)"に"
[5]=>
string(6)"日本"
[6]=>
string(6)"国内"
[7]=>
string(3)"や"
[8]=>
string(6)"日本"
[9]=>
string(3)"人"
[10]=>
string(6)"同士"
[11]=>
string(3)"の"
[12]=>
string(3)"間"
[13]=>
string(3)"で"
[14]=>
string(3)"使"
[15]=>
string(3)"わ"
[16]=>
string(6)"れて"
[17]=>
string(6)"いる"
[18]=>
string(6)"言語"
[19]=>
string(3)"で"
[20]=>
string(6)"ある"
}
array(17){
[0]=>
string(9)"日本語"
[1]=>
string(3)"は"
[2]=>
string(6)"主に"
[3]=>
string(9)"日本国"
[4]=>
string(3)"内"
[5]=>
string(3)"や"
[6]=>
string(9)"日本人"
[7]=>
string(6)"同士"
[8]=>
string(3)"の"
[9]=>
string(3)"間"
[10]=>
string(3)"で"
[11]=>
string(3)"使"
[12]=>
string(3)"わ"
[13]=>
string(6)"れて"
[14]=>
string(6)"いる"
[15]=>
string(6)"言語"
[16]=>
string(9)"である"
}
詞性說明a形容词(取英语形容词adjective的第1个字母。
)
ad副形词(直接作状语的形容词,形容词代码a和副词代码d并在一起。
)
ag形容词性语素(形容词性语素,形容词代码为a,语素代码g前面置以a。
)
an名形词(具有名词功能的形容词,形容词代码a和名词代码n并在一起。
)
b区别词(取汉字「别」的声母。
)
c连词(取英语连词conjunction的第1个字母。
)
d副词(取adverb的第2个字母,因其第1个字母已用于形容词。
)
df副词*
dg副语素(副词性语素,副词代码为d,语素代码g前面置以d。
)
e叹词(取英语叹词exclamation的第1个字母。
)
eng外语
f方位词(取汉字「方」的声母。
)
g语素(绝大多数语素都能作为合成词的「词根」,取汉字「根」的声母。
)
h前接成分(取英语head的第1个字母。
)
i成语(取英语成语idiom的第1个字母。
)
j简称略语(取汉字「简」的声母。
)
k后接成分
l习用语(习用语尚未成为成语,有点「临时性」,取「临」的声母。
)
m数词(取英语numeral的第3个字母,n,u已有他用。
)
mg数语素
mq数词*
n名词(取英语名词noun的第1个字母。
)
ng名语素(名词性语素,名词代码为n,语素代码g前面置以n。
)
nr人名(名词代码n和「人(ren)」的声母并在一起。
)
nrfg名词*
nrt名词*
ns地名(名词代码n和处所词代码s并在一起。
)
nt机构团体(「团」的声母为t,名词代码n和t并在一起。
)
nz其他专名(「专」的声母的第1个字母为z,名词代码n和z并在一起。
)
o拟声词(取英语拟声词onomatopoeia的第1个字母。
)
p介词(取英语介词prepositional的第1个字母。
)
q量词(取英语quantity的第1个字母。
)
r代词(取英语代词pronoun的第2个字母,因p已用于介词。
)
rg代词语素
rr代词*
rz代词*
s处所词(取英语space的第1个字母。
)
t时间词(取英语time的第1个字母。
)
tg时语素(时间词性语素,时间词代码为t,在语素的代码g前面置以t。
)
u助词(取英语助词auxiliary的第2个字母,因a已用于形容词。
)
ud助词*
ug助词*
uj助词*
ul助词*
uv助词*
uz助词*
v动词(取英语动词verb的第一个字母。
)
vd副动词(直接作状语的动词,动词和副词的代码并在一起。
)
vg动语素
vi动词*
vn名动词(指具有名词功能的动词,动词和名词的代码并在一起。
)
vq动词*
w标点符号
x非语素字(非语素字只是一个符号,字母x通常用于代表未知数、符号。
)
y语气词(取汉字「语」的声母。
)
z状态词(取汉字「状」的声母的前一个字母。
)
zg状态词*
DonateIfyoufindfuku-mluseful,pleaseconsideradonation.Thankyou!bitcoin:1BbihQU3CzSdyLSP9bvQq7Pi1z1jTdAaq9eth:0x92DA3F837bf2F79D422bb8CEAC632208F94cdE33LicenseTheMITLicense(MIT)Copyright(c)2015fukuballPermissionisherebygranted,freeofcharge,toanypersonobtainingacopyofthissoftwareandassociateddocumentationfiles(the"Software"),todealintheSoftwarewithoutrestriction,includingwithoutlimitationtherightstouse,copy,modify,merge,publish,distribute,sublicense,and/orsellcopiesoftheSoftware,andtopermitpersonstowhomtheSoftwareisfurnishedtodoso,subjecttothefollowingconditions:TheabovecopyrightnoticeandthispermissionnoticeshallbeincludedinallcopiesorsubstantialportionsoftheSoftware.THESOFTWAREISPROVIDED"ASIS",WITHOUTWARRANTYOFANYKIND,EXPRESSORIMPLIED,INCLUDINGBUTNOTLIMITEDTOTHEWARRANTIESOFMERCHANTABILITY,FITNESSFORAPARTICULARPURPOSEANDNONINFRINGEMENT.INNOEVENTSHALLTHEAUTHORSORCOPYRIGHTHOLDERSBELIABLEFORANYCLAIM,DAMAGESOROTHERLIABILITY,WHETHERINANACTIONOFCONTRACT,TORTOROTHERWISE,ARISINGFROM,OUTOFORINCONNECTIONWITHTHESOFTWAREORTHEUSEOROTHERDEALINGSINTHESOFTWARE.Author: fukuballSourceCode: https://github.com/fukuball/jieba-phpLicense:MITLicense#php
hourlydeveloper
1597820991
HirePHPDeveloper
LookingtodevelopaPHPbasedwebsitefromscratchorrevampyourexistingwebsite?
HourlyDeveloper.iohasalwaysbeenanindustryleaderforcompaniesandbusinessownerslookingtohirePHPwebdeveloper.BychoosingtoHirePHPDeveloperfromourcompany,youcanalwaysexpectthebestresults.OurPHPservicesandsolutionsarealwaysflexiblewhichmeansthatnomatterthenatureofyourproject,youcanalwayscountonusforgettingthebestPHPexpertise.
Consultwithourexperts:https://bit.ly/3aEGxPy
#hirephpdeveloper#phpdeveloper#phpdevelopmentcompany#phpdevelopmentservices#phpdevelopment#php
RahimMakhani
1624337661
FindthebestPHPdevelopersforyourwebappdevelopment
PHPisthebestlanguagetochoosefordevelopingawebapp.PHPisespeciallyusedforwebappdevelopment.Awebappisveryimportantfromthebusinesspointofviewasithelpstoimprovethebusinessandalsoincreasesthenumberofcustomers.
IfyoualsowanttodevelopawebappforyourownbusinessthenyouneedtoselectaPHPdevelopmentcompany.NevinaInfotechisoneofthebestPHPdevelopmentcompaniesthatcanhelpyoutodevelopyourwebappwiththehelpofitsdedicateddevelopers.
#phpwebsitedevelopmentservices#phpwebdevelopmentcompanyinindia#customphpwebdevelopmentservices#phpwebsitedevelopment#phpdevelopmentservices#phpdevelopmentcompanyinusa
延伸文章資訊
- 1Laravel 中使用PHP 分词库(jieba) 和(scws) - LearnKu
laravel中使用php分词库(jieba)和(scws) 坚持开源,坚持分享这篇文章旨在介绍我用过的两个PHP分词库以及他们的简单使用目的:完成一段段落的分词1.Jieba分词库Jieba分...
- 2GitHub - fukuball/jieba-php: "結巴"中文分詞
"結巴"中文分詞:做最好的PHP 中文分詞、中文斷詞組件。 / "Jieba" (Chinese for "to stutter") Chinese text segmentation: bui...
- 3jieba-php - Bountysource
"結巴"中文分詞:做最好的PHP 中文分詞、中文斷詞組件。 / "Jieba" (Chinese for "to stutter") Chinese text segmentation: bui...
- 4实用PHP+jieba(结巴)中文关键字提取 - CSDN博客
jieba(结巴)中文分词是目前国内一款较好的中文分词插件。 1.兼容当前绝大部分流行开发语言,例:Java、C/C++、PHP、Ios、 Node.js 等开发语言。
- 5Laravel 中使用PHP 分詞庫(jieba) 和(scws) | IT人
堅持開源,堅持分享這篇文章旨在介紹我用過的兩個PHP分詞庫以及他們的簡單使用目的:完成一段段落的分詞1.Jieba分詞庫Jieba分詞庫,GitHub地址 ...