java 英文单词拼写纠正框架(Word Checker)
Word Checker
本项目用于单词拼写检查。
项目简介
word checker 用于单词拼写检查。
特性说明
支持 i18n
错误提示支持 i18N
支持英文的单词纠错
可以迅速判断当前单词是否拼写错误
可以返回最佳匹配结果
可以返回纠正匹配列表,支持指定返回列表的大小
后续将会添加的新功能
英文单词支持自行定义
中文单词的拼写是否正确功能添加
快速开始
JDK 版本
JDK1.7 及其以后
入门例子
maven 引入
本项目已经上传到 maven 仓库,直接引入即可
<dependency>
<groupId>com.github.houbb</groupId>
<artifactId>word-checker</artifactId>
<version>0.0.1</version>
</dependency>
测试案例
- Main.java
public static void main(String[] args) {
final String result = EnWordChecker.getInstance().correct("speling");
System.out.println(result);
}
结果为
spelling
英文拼写纠错功能介绍
备注
所有方法为 EnWordChecker 类下。
| 功能 | 方法 | 参数 | 返回值 | 备注 |
|---|---|---|---|---|
| 判断单词拼写是否正确 | isCorrect(string) | 待检测的单词 | boolean | |
| 返回最佳纠正结果 | correct(string) | 待检测的单词 | String | 如果没有找到可以纠正的单词,则返回其本身 |
| 判断单词拼写是否正确 | correctList(string) | 待检测的单词 | List | 返回所有匹配的纠正列表 |
| 判断单词拼写是否正确 | correctList(string, int limit) | 待检测的单词, 返回列表的大小 | 返回指定大小的的纠正列表 | 列表大小 <= limit |
测试例子
参见
/**
* 是否拼写正确
*/
@Test
public void isCorrectTest() {
final String hello = "hello";
final String speling = "speling";
Assert.assertTrue(EnWordChecker.getInstance().isCorrect(hello));
Assert.assertFalse(EnWordChecker.getInstance().isCorrect(speling));
}
/**
* 返回最佳匹配结果
*/
@Test
public void correctTest() {
final String hello = "hello";
final String speling = "speling";
Assert.assertEquals("hello", EnWordChecker.getInstance().correct(hello));
Assert.assertEquals("spelling", EnWordChecker.getInstance().correct(speling));
}
/**
* 默认纠正匹配列表
* 1. 默认返回所有
*/
@Test
public void correctListTest() {
final String word = "goo";
List<String> stringList = EnWordChecker.getInstance().correctList(word);
Assert.assertTrue(stringList.size() > 0);
}
/**
* 默认纠正匹配列表
* 1. 默认返回所有
*/
@Test
public void correctListTest() {
final String word = "goo";
List<String> stringList = EnWordChecker.getInstance().correctList(word);
Assert.assertTrue(stringList.size() > 0);
}
技术鸣谢
Words 提供的原始英语单词数据。
文档参考
java 英文单词拼写纠正框架(Word Checker)的更多相关文章
- Java英文单词Java基础常见英语词汇
Java英文单词Java基础常见英语词汇(共70个) ...
- Java jacob调用打印机打印word文档
前面说了Java如何生成复杂的Word文档,今年记录下Java如何调用打印机打印word文档. 起初用的是自带的PrintJob,但是系统提供的打印机制并不成熟完整.网上的代码也是千篇一律,在我的打印 ...
- [译] 第三十天:Play Framework - Java开发者梦寐以求的框架 - 百花宫
前言 30天挑战的最后一天,我决定学习 Play Framework .我本来想写Sacla,但是研究几个小时后,我发现没法在一天内公正评价Scala,下个月花些时间来了解并分享经验.本文我们先来看看 ...
- 菜鸟日记之 java中的集合框架
java中的集合框架图 如图所示:java中的集合分为两种Collection和Map两种接口 可分为Collection是单列集合和Map的双列集合 Collection单列集合:继承了Iterat ...
- Java基础--说集合框架
版权所有,转载注明出处. 1,Java中,集合是什么?为什么会出现? 根据数学的定义,集合是一个元素或多个元素的构成,即集合一个装有元素的容器. Java中已经有数组这一装有元素的容器,为什么还要新建 ...
- Java字节码操纵框架ASM小试
本文主要内容: ASM是什么 JVM指令 Java字节码文件 ASM编程模型 ASM示例 参考资料汇总 JVM详细指令 ASM是什么 ASM是一个Java字节码操纵框架,它能被用来动态生成类或者增强既 ...
- Java 7 Fork/Join 框架
在 Java7引入的诸多新特性中,Fork/Join 框架无疑是重要的一项.JSR166旨在标准化一个实质上可扩展的框架,以将并行计算的通用工具类组织成一个类似java.util中Collection ...
- 【jframe】Java Web应用程序框架 - 第01篇:Get Started
jframe是什么? jframe是一个基于MIT协议开源的java web应用程序框架,汇聚了我们团队之于java web应用程序的核心架构思想以及大量最佳实践,并且持续在实际项目中不断完善优化. ...
- Java 用Freemarker完美导出word文档(带图片)
Java 用Freemarker完美导出word文档(带图片) 前言 最近在项目中,因客户要求,将页面内容(如合同协议)导出成word,在网上翻了好多,感觉太乱了,不过最后还是较好解决了这个问题. ...
随机推荐
- Bartender标签传参与打印
在VS中添加bartender的COM组件引用后(一定要添加,否则会提示找不到BarTender.Application): /// <summary> /// Bartender模板打印 ...
- 【frame系列标签】
html框架标签1.内嵌框架 <frame></frame> 在页面上开辟一块空间 frame内部属性: src 要填充的图片或者网址 width height target= ...
- jmeter简单的接口性能测试
原文转自:https://blog.csdn.net/lovesoo/article/details/78579547 Apache JMeter是一款纯java编写负载功能测试和性能测试开源工具软件 ...
- java web 登录后更新JSESSIONID
https://huangqiqing123.iteye.com/blog/2031455 登录前的请求一般都是http的,http是不安全的,假设用户登录前的JSESSIONID被人取得,如果登录后 ...
- django-枚举类型扩展方法
原文地址:https://docs.djangoproject.com/en/dev/ref/models/instances/#django.db.models.Model.get_FOO_disp ...
- 使用Visual Studio 2017开发Linux程序
环境: win7_x64旗舰版.VS2017企业版.VMware10.0.2.CentOS7 在CentOS7上首先需要安装gcc.g++和gdbserver,这里就不多说 一.安装VS2017 1. ...
- python查询mysql并生成excel表
需求说明 开发不愿意单独为某个项目做后台 并且运营那边需要合并多个表的数据 因此找上了我. 要求每周执行一次.月初也执行一次 要查询2个mysql数据库多个表并生成excel表 我的想法 找开发要sq ...
- Java创建对象的4种方式
Java创建对象的方式共有四种: 使用new语句实例化一个对象: 通过反射机制创建对象: 通过clone()方法创建一个对象: 通过反序列化的方式创建对象. 一.使用new语句实例化一个对象 new语 ...
- npm run dev--The 'mode' option has not been set, webpack will fallback to 'production' for this value
npm run dev时报警告: warning configurationThe 'mode' option has not been set, webpack will fallback to ' ...
- 西门子S7-200SMART PLC视频教程(百度网盘)
西门子S7-200SMART PLC视频教程(百度网盘)西门子S7-200 SMART PLC是西门子公司推出的高性价比小型plc,是国内广泛使用的S7-200PLC的更新换代产品. 以下是关于S7- ...