按照“刘政怡, 吴建国 and 刘慧婷, 2008. 音节切分歧义方法研究. 计算机技术与发展, 18(8), pp.35-38.”论文,用 C++17 实现了一个拼音分割算法。
https://github.com/fantasticfears/pinyin-syllable-segmentation
算法只有一个 syllable_segmentation.hpp,syllable_list.csv 是一个音节的文件。SyllableIndex 存了音节的信息。SyllableSegmentor 实现了 AppendPhone、GetSyllableList 和 PopLastPhone,分别可以添加音符、获得分割好的音符字符串和删除最后一个字符。
现在已经没有多少研究去做音节分割了。搜狗可能做得比研究都好了。