java 开源中文的繁简体转换工具 opencc4j | 您所在的位置:网站首页 › 繁体汉文 › java 开源中文的繁简体转换工具 opencc4j |
Opencc4j
Opencc4j 支持中文繁简体转换,考虑到词组级别。 Features 特点严格区分「一简对多繁」和「一简对多异」。 完全兼容异体字,可以实现动态替换。 严格审校一简对多繁词条,原则为「能分则不合」。 词库和函数库完全分离,可以自由修改、导入、扩展。 兼容 Windows、Linux、Mac 平台。 支持自定义分词 支持判断单个字(词)是否为简体/繁体 支持返回字符串中简体/繁体的列表信息 支持中国台湾地区繁简体转换 快速开始 maven 引入 com.github.houbb opencc4j 1.8.1 api 概览核心工具列表如下: 序号工具类简介1ZhConverterUtil基础的繁简体转换2ZhTwConverterUtil台湾地区的繁简体转换所有的工具类方法具有相同的方法设计,便于记忆。 核心方法如下: 序号api 方法简介1toSimple(String)转为简体2toTraditional(String)转为繁体3simpleList(String)返回包含的简体列表4traditionalList(String)返回包含的繁体列表5toSimple(char)返回单个汉字对应的所有简体字列表6toTraditional(char)返回单个汉字对应的所有繁体字列表7isSimple(String)是否全部为简体8isSimple(char)单个字符是否为简体9containsSimple(String)字符中是否为包含简体10isTraditional(String)是否全部为繁体11isTraditional(char)单个字符是否为繁体12containsTraditional(String)字符中是否为包含繁体13isChinese(String)是否全部为中文14isChinese(char)单个字符是否为中文15containsChinese(char)字符串中是否包含中文 繁简体转换 转为简体 toSimple String original = "生命不息,奮鬥不止"; String result = ZhConverterUtil.toSimple(original); Assert.assertEquals("生命不息,奋斗不止", result); 转为繁体 toTraditional String original = "生命不息,奋斗不止"; String result = ZhConverterUtil.toTraditional(original); Assert.assertEquals("生命不息,奮鬥不止", result); 繁简体判断对单个字符或者词组进行繁简体判断。 是否为简体 isSimple Assert.assertTrue(ZhConverterUtil.isSimple('奋')); Assert.assertTrue(ZhConverterUtil.isSimple("奋")); Assert.assertTrue(ZhConverterUtil.isSimple("奋斗")); Assert.assertFalse(ZhConverterUtil.isSimple('奮')); Assert.assertFalse(ZhConverterUtil.isSimple("奮")); Assert.assertFalse(ZhConverterUtil.isSimple("奮鬥")); Assert.assertFalse(ZhConverterUtil.isSimple("奮斗")); Assert.assertFalse(ZhConverterUtil.isSimple("beef")); 是否包含简体 containsSimple Assert.assertTrue(ZhConverterUtil.containsSimple("奋")); Assert.assertTrue(ZhConverterUtil.containsSimple("奋斗")); Assert.assertTrue(ZhConverterUtil.containsSimple("奋斗2023")); Assert.assertFalse(ZhConverterUtil.containsSimple("編")); Assert.assertFalse(ZhConverterUtil.containsSimple("編號")); 是否为繁体 isTraditional Assert.assertTrue(ZhConverterUtil.isTraditional('編')); Assert.assertTrue(ZhConverterUtil.isTraditional("編")); Assert.assertTrue(ZhConverterUtil.isTraditional("編號")); Assert.assertFalse(ZhConverterUtil.isTraditional('编')); Assert.assertFalse(ZhConverterUtil.isTraditional("编")); Assert.assertFalse(ZhConverterUtil.isTraditional("编号")); Assert.assertFalse(ZhConverterUtil.isTraditional("编號")); 是否包含繁体 containsTraditional Assert.assertTrue(ZhConverterUtil.containsTraditional("編")); Assert.assertTrue(ZhConverterUtil.containsTraditional("編號")); Assert.assertTrue(ZhConverterUtil.containsTraditional("編號2023")); Assert.assertFalse(ZhConverterUtil.containsTraditional("号")); Assert.assertFalse(ZhConverterUtil.containsTraditional("编号")); 句子中包含的繁简体列表返回返回字符串中繁简体对应的词、字列表,默认支持中文分词。 繁简体列表返回的词组和分词策略紧密相关。 简体列表 simpleList final String original = "生命不息奋斗不止"; final List resultList = ZhConverterUtil.simpleList(original); Assert.assertEquals("[生, 命, 不, 息, 奋斗, 不, 止]", resultList.toString()); 繁体列表 traditionalListPS: 很多字是同体字。 final String original = "生命不息奮鬥不止"; final List resultList = ZhConverterUtil.traditionalList(original); Assert.assertEquals("[生, 命, 不, 息, 奮, 鬥, 不, 止]", resultList.toString()); 单个汉字对应的繁简体列表 繁体字列表 Assert.assertEquals("[幹, 乾, 干]", ZhConverterUtil.toTraditional('干').toString()); Assert.assertEquals("[發, 髮]", ZhConverterUtil.toTraditional('发').toString()); 简体字列表 Assert.assertEquals("[测]", ZhConverterUtil.toSimple('測').toString()); 中文工具方法 是否为中文 isChinese Assert.assertTrue(ZhConverterUtil.isChinese("你")); Assert.assertTrue(ZhConverterUtil.isChinese("你好")); Assert.assertTrue(ZhConverterUtil.isChinese('你')); Assert.assertFalse(ZhConverterUtil.isChinese("你0")); Assert.assertFalse(ZhConverterUtil.isChinese("10")); Assert.assertFalse(ZhConverterUtil.isChinese('0')); Assert.assertFalse(ZhConverterUtil.isChinese("")); Assert.assertFalse(ZhConverterUtil.isChinese(null)); 是否包含中文 containsChinese Assert.assertTrue(ZhConverterUtil.containsChinese("你")); Assert.assertTrue(ZhConverterUtil.containsChinese("你好")); Assert.assertTrue(ZhConverterUtil.containsChinese("你0")); Assert.assertFalse(ZhConverterUtil.containsChinese("10")); Assert.assertFalse(ZhConverterUtil.containsChinese("")); Assert.assertFalse(ZhConverterUtil.containsChinese(null)); 拓展阅读pinyin 汉字转拼音 pinyin2hanzi 拼音转汉字 segment 高性能中文分词 opencc4j 中文繁简体转换 nlp-hanzi-similar 汉字相似度 word-checker 拼写检测 sensitive-word 敏感词 |
CopyRight 2018-2019 实验室设备网 版权所有 |