天天看點

pyhanlp 繁簡轉換,拼音轉換與字元正則化

繁簡轉換

HanLP幾乎實作了所有我們需要的繁簡轉換方式,并且已經封裝到了HanLP中,使得我們可以輕松的使用,而分詞器中已經預設支援多種繁簡格式或者混合。這裡我們不再做過多描述。

說明

HanLP能夠識别簡繁分歧詞,比如列印機=印表機。許多簡繁轉換工具不能區分“以後”“皇後”中的兩個“後”字,HanLP可以。

算法詳解

《漢字轉拼音與簡繁轉換的Java實作》

pyhanlp 繁簡轉換,拼音轉換與字元正則化
pyhanlp 繁簡轉換,拼音轉換與字元正則化

漢字轉拼音

HanLP中的漢字轉拼音功能也十分的強大。

HanLP不僅支援基礎的漢字轉拼音,還支援聲母、韻母、音調、音标和輸入法首字母首聲母功能。

HanLP能夠識别多音字,也能給繁體中文注拼音。

最重要的是,HanLP采用的模式比對更新到AhoCorasickDoubleArrayTrie,性能大幅提升,能夠提供毫秒級的響應速度!

pyhanlp 繁簡轉換,拼音轉換與字元正則化
pyhanlp 繁簡轉換,拼音轉換與字元正則化

拼音轉中文

HanLP中的資料結構和接口是靈活的,組合這些接口,可以自己創造新功能,我們可以使用AhoCorasickDoubleArrayTrie實作的最長分詞器,需要使用者調用setTrie()提供一個AhoCorasickDoubleArrayTrie

pyhanlp 繁簡轉換,拼音轉換與字元正則化
pyhanlp 繁簡轉換,拼音轉換與字元正則化

字元正則化

示範正規化字元配置項的效果(繁體->簡體,全角->半角,大寫->小寫)。

該配置項位于hanlp.properties中,通過Normalization=true來開啟(現在直接通過HanLP.Config.Normalization開啟即可)。

切換配置後必須删除CustomDictionary.txt.bin緩存,否則隻影響動态插入的新詞。

在我動筆前一個星期,已經有同學添加了,添加自定義詞典之後,自動删除緩存的功能。位址請點選

https://github.com/hankcs/HanLP/pull/954

,現在隻需要開啟正則化即可

pyhanlp 繁簡轉換,拼音轉換與字元正則化
pyhanlp 繁簡轉換,拼音轉換與字元正則化

21[現在, 的, hanlp, 已經, 新增, 了, 新增, 自定義, 詞典, 之後, ,, 自動, 删除, 快, 取, 的, 功能, ,, 現在, 隻, 需要, 開啟, 正, 則, 化, 即可]

文章來源于Font Tian的部落格