久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

pyhanlp拼音轉換與字符正則化

154次閱讀
沒有評論

共計 4560 個字符,預計需要花費 12 分鐘才能閱讀完成。

本篇內容主要講解“pyhanlp 拼音轉換與字符正則化”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓丸趣 TV 小編來帶大家學習“pyhanlp 拼音轉換與字符正則化”吧!

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

from pyhanlp import *

# 繁簡轉化

print(HanLP.convertToTraditionalChinese(“以后等你當上皇后,就能買草莓慶祝了”。發現一根白頭發))

print(HanLP.convertToSimplifiedChinese( 憑藉筆記簿型電腦寫程式 HanLP))

# 簡體轉臺灣繁體

print(HanLP.s2tw( hankcs 在臺灣寫代碼))

# 臺灣繁體轉簡體

print(HanLP.tw2s( hankcs 在臺灣寫程式碼))

# 簡體轉香港繁體

print(HanLP.s2hk( hankcs 在香港寫代碼))

# 香港繁體轉簡體

print(HanLP.hk2s( hankcs 在香港寫代碼))

# 香港繁體轉臺灣繁體

print(HanLP.hk2tw( hankcs 在臺灣寫代碼))

# 臺灣繁體轉香港繁體

print(HanLP.tw2hk( hankcs 在香港寫程式碼))

# 香港 / 臺灣繁體和 HanLP 標準繁體的互轉

print(HanLP.t2tw( hankcs 在臺灣寫代碼))

print(HanLP.t2hk( hankcs 在臺灣寫代碼))

print(HanLP.tw2t( hankcs 在臺灣寫程式碼))

print(HanLP.hk2t( hankcs 在臺灣寫代碼))

「以後等你當上皇后,就能買草莓慶祝了」。發現一根白頭髮

憑借筆記本電腦寫程序 HanLP

hankcs 在臺灣寫程式碼

hankcs 在臺灣寫代碼

hankcs 在香港寫代碼

hankcs 在香港寫代碼

hankcs 在臺灣寫程式碼

hankcs 在香港寫代碼

hankcs 在臺灣寫程式碼

hankcs 在臺灣寫代碼

hankcs 在臺灣寫代碼

hankcs 在臺灣寫代碼

漢字轉拼音

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

說明

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

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

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

算法詳解

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

# 漢字轉拼音

Pinyin = JClass(com.hankcs.hanlp.dictionary.py.Pinyin)

text = 重載不是重任!

pinyin_list = HanLP.convertToPinyinList(text)

print(原文,, end=)

print(text)

print(拼音(數字音調),, end=)

print(pinyin_list)

print(拼音(符號音調),, end=)

for pinyin in pinyin_list:

    print(%s, % pinyin.getPinyinWithToneMark(), end= )

print(\n 拼音(無音調),, end=)

for pinyin in pinyin_list:

    print(%s, % pinyin.getPinyinWithoutTone(), end= )

print(\n 聲調,, end=)

for pinyin in pinyin_list:

    print(%s, % pinyin.getTone(), end= )

print(\n 聲母,, end=)

for pinyin in pinyin_list:

    print(%s, % pinyin.getShengmu(), end= )

print(\n 韻母,, end=)

for pinyin in pinyin_list:

    print(%s, % pinyin.getYunmu(), end= )

print(\n 輸入法頭,, end=)

for pinyin in pinyin_list:

    print(%s, % pinyin.getHead(), end= )

print()

# 拼音轉換可選保留無拼音的原字符

print(HanLP.convertToPinyinString( 截至 2012 年,, , True))

print(HanLP.convertToPinyinString( 截至 2012 年,, , False))

原文,重載不是重任!

拼音(數字音調),[chong2, zai3, bu2, shi4, zhong4, ren4, none5]

拼音(符號音調),chóng, zǎi, bú, shì, zhòng, rèn, none, 

拼音(無音調),chong, zai, bu, shi, zhong, ren, none, 

聲調,2, 3, 2, 4, 4, 4, 5, 

聲母,ch, z, b, sh, zh, r, none, 

韻母,ong, ai, u, i, ong, en, none, 

輸入法頭,ch, z, b, sh, zh, r, none, 

jie zhi none none none none nian none

jie zhi 2 0 1 2 nian,

拼音轉中文

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

StringDictionary = JClass(

    com.hankcs.hanlp.corpus.dictionary.StringDictionary )

CommonAhoCorasickDoubleArrayTrieSegment = JClass(

    com.hankcs.hanlp.seg.Other.CommonAhoCorasickDoubleArrayTrieSegment )

Config = JClass(com.hankcs.hanlp.HanLP$Config)

TreeMap = JClass(java.util.TreeMap)

TreeSet = JClass(java.util.TreeSet)

dictionary = StringDictionary()

dictionary.load(Config.PinyinDictionaryPath)

entry = {}

m_map = TreeMap()

for entry in dictionary.entrySet():

    pinyins = entry.getValue().replace( [\\d,] , )

    words = m_map.get(pinyins)

    if words is None:

        words = TreeSet()

        m_map.put(pinyins, words)

    words.add(entry.getKey())

words = TreeSet()

words.add(綠色)

words.add(濾色)

m_map.put(lvse , words)

segment = CommonAhoCorasickDoubleArrayTrieSegment(m_map)

print(segment.segment( renmenrenweiyalujiangbujianlvse))

print(segment.segment( lvsehaihaodajiadongxidayinji))

[renmenrenweiyalujiangbujian/null, lvse/[ 濾色, 綠色]][lvse/[ 濾色, 綠色], haihaodajiadongxidayinji/null]

字符正則化

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

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

切換配置后必須刪除 CustomDictionary.txt.bin 緩存,否則只影響動態插入的新詞。

在我動筆前一個星期,已經有同學添加了,添加自定義詞典之后,自動刪除緩存的功能。地址請點擊 https://github.com/hankcs/HanLP/pull/954,現在只需要開啟正則化即可

CustomDictionary =JClass(com.hankcs.hanlp.dictionary.CustomDictionary)

print(HanLP.Config.Normalization = False\n)

HanLP.Config.Normalization = False

CustomDictionary.insert(愛聽 4G , nz 1000)

print(HanLP.segment( 愛聽 4g))

print(HanLP.segment( 愛聽 4G))

print(HanLP.segment( 愛聽4G))

print(HanLP.segment( 愛聽4G))

print(HanLP.segment( 愛聽4G))

print(HanLP.segment( 喜歡4G))

print(HanLP.segment( hankcs 在臺灣寫代碼))

print(\nHanLP.Config.Normalization = True\n)

HanLP.Config.Normalization = True

print(HanLP.segment( 愛聽 4g))

print(HanLP.segment( 愛聽 4G))

print(HanLP.segment( 愛聽4G))

print(HanLP.segment( 愛聽4G))

print(HanLP.segment( 愛聽4G))

print(HanLP.segment( 喜歡4G))

print(HanLP.segment( hankcs 在臺灣寫代碼))

HanLP.Config.ShowTermNature = False

text = HanLP.s2tw(現在的 HanLP 已經添加了添加自定義詞典之后,自動刪除緩存的功能, 現在只需要開啟正則化即可)

print(text)

print(HanLP.segment(text))

HanLP.Config.ShowTermNature = False

HanLP.Config.Normalization = False

[愛聽 4g][愛聽 4G][愛, 聽, 4, G][愛, 聽, 4, G][愛, 聽, 4, G][喜歡, 4, G][hankcs, 在, 臺, 灣寫, 代, 碼]

HanLP.Config.Normalization = True

[愛聽 4g][愛聽 4g][愛聽 4g][愛聽 4g][愛聽 4g][喜歡, 4, g][hankcs, 在, 臺灣, 寫, 代碼]

現在的 HanLP 已經新增了新增自定義詞典之後,自動刪除快取的功能, 現在只需要開啟正則化即可

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

到此,相信大家對“pyhanlp 拼音轉換與字符正則化”有了更深的了解,不妨來實際操作一番吧!這里是丸趣 TV 網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-07-28發表,共計4560字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 宁明县| 阿拉善盟| 东宁县| 石棉县| 博湖县| 左云县| 澳门| 岫岩| 南漳县| 万安县| 张北县| 富平县| 鄂州市| 高邑县| 册亨县| 武平县| 屏东县| 沂南县| 方正县| 清镇市| 交口县| 应城市| 邛崃市| 甘德县| 常山县| 蕉岭县| 美姑县| 元谋县| 磴口县| 准格尔旗| 龙泉市| 普陀区| 赣榆县| 平度市| 长泰县| 偏关县| 比如县| 建德市| 南涧| 贺州市| 北票市|