從網上看了一篇perl分詞的程式,執行程式後發現,數字全部給分開了,例如,「2023年國家gdp是...」,執行程式後結果為「2 0 1 0 年 國家 g d p 是 ....」,文中「2010」是不應該分開的,我改進了這個程式,可以實現數字不分開,如下:
#!/usr/bin/perl
print "begin loading dictionary.../n";
open(filein, "地名.txt"); #讀取辭典
$maxlen = 0; #統計詞條之最大長度
while ($line = ) = length($line); #建立字典,以詞條內容為索引
if (length($line) > $maxlen)
}close(filein); #關閉辭典檔案
print "end loading dictionary .../n";
#正文部分開始
open(fh,"a.txt");
open(dd,"+>result.txt");
select(dd);
while ()
$result = forward_segment($_); #呼叫正向最大匹配子程式
print "$result/n"; #輸出分詞結果
#print "=>"; #等待下一次輸入
}sub forward_segment #正向最大匹配子程式定義
) #若沒有對應詞條,則進入for迴圈下一輪,去除乙個漢字
}if ($match == 0) else }}
$segemted=~s/ ([^0-9.%])/ $1/g;
$segemted=~s/([0-9.%]) /$1/g;
return $segemted; #將$segemted作為結果返回
}close fh;
close dd;
Paoding分詞 擴充套件詞典
庖丁有兩種分詞模式 most words 最大詞量分詞方式,此模式對應的詞典編譯類為mostwordsmodedictionariescompiler max word length 按詞在詞典中的原序來進行編譯,基本不再做其他處理,此模式對應的詞典編譯類為sortingdictionariesco...
Paoding分詞 擴充套件詞典
在使用庖丁自定義詞典的時候,按照網上查的資料,1.首先自定義乙個 dic的檔案,以utf 8儲存 2.將自定義詞新增到dic locale下的 dic中 3.刪除.compile資料夾 配置paoding.dic.home 如果在上面選擇了paoding.dic.home.config fisrt ...
Paoding分詞 擴充套件詞典
庖丁有兩種分詞模式 most words 最大詞量分詞方式,此模式對應的詞典編譯類為mostwordsmodedictionariescompiler max word length 按詞在詞典中的原序來進行編譯,基本不再做其他處理,此模式對應的詞典編譯類為sortingdictionariesco...