非常实用,基于C开源的中文解析工具

程序员有二十年 2024-05-18 19:35:37

中文解析库

推荐一个功能强大的中文处理库,Chinese 是一个中文解析通用工具,基于 C# 开发,包括拼音,简繁转换,数字读法,货币读法。和其他工具不一样的是,Chinese 可以在本地离线使用,而不需要对接到其他的第三方平台。

Chinese 发布了 Nuget 组件,所以可以很方便地直接集成到项目中,开箱即用。

如何使用

首先,通过 Nuget 使用 .NET CLI 安装:

dotnet add package Chinese拼音// "mian3 fei4,kua4 ping2 tai2,kai1 yuan2!"Pinyin.GetString("免费,跨平台,开源!", PinyinFormat.Default);// "mian fei,kua ping tai,kai yuan!"Pinyin.GetString("免费,跨平台,开源!", PinyinFormat.WithoutTone);// "miǎn fèi,kuà píng tái,kāi yuán!"Pinyin.GetString("免费,跨平台,开源!", PinyinFormat.Phonetic);// "mf,kpt,ky!"Pinyin.GetString("免费,跨平台,开源!", PinyinFormat.InitialConsonant);简繁转换// "免費,跨平臺,開源!"ChineseConverter.ToTraditional("免费,跨平台,开源!"); // "免费,跨平台,开源!"ChineseConverter.ToSimplified("免費,跨平臺,開源!"); 货币名称转换var lexicon = Lexicon.Currency;lexicon.GetString(1); // "一元整"lexicon.GetString(10_0001); // "一十万零一元整"lexicon.GetString(10_0101); // "一十万零一百零一元整"lexicon.GetString(10_1001); // "一十万一千零一元整"lexicon.GetString(10_1010); // "一十万一千零一十元整"lexicon.GetString(10_0001.2m); // "一十万零一元二角整"lexicon.GetString(10_0001.23m); // "一十万零一元二角三分"lexicon.GetString(10_0001.03m); // "一十万零一元零三分"// 1lexicon.GetNumber("一元整"); // 10_0001lexicon.GetNumber("一十万零一元整"); // 10_0101lexicon.GetNumber("一十万零一百零一元整"); // 10_1001lexicon.GetNumber("一十万一千零一元整"); // 10_1010lexicon.GetNumber("一十万一千零一十元整"); // 10_0001.2mlexicon.GetNumber("一十万零一元二角整"); // 10_0001.23mlexicon.GetNumber("一十万零一元二角三分"); // 10_0001.03mlexicon.GetNumber("一十万零一元零三分"); 编号转换var lexicon = Lexicon.NumberWith(NumberMode.Code);// "一〇〇〇〇一"lexicon.GetString(10_0001); // "一〇〇一〇一"lexicon.GetString(10_0101); // "一〇一〇〇一"lexicon.GetString(10_1001); // "一〇一〇一〇"lexicon.GetString(10_1010); // 10_0001lexicon.GetNumber("一〇〇〇〇一"); // 10_0101lexicon.GetNumber("一〇〇一〇一"); // 10_1001lexicon.GetNumber("一〇一〇〇一"); // 10_1010lexicon.GetNumber("一〇一〇一〇");

总结一下,Chinese 是一个非常实用的中文处理工具,开箱即用,可以非常方便的集成到项目中。

项目地址

https://github.com/zmjack/Chinese

0 阅读:0

程序员有二十年

简介:感谢大家的关注