java 英文单词纠正校验框架(Word Checker)

Word Checker

本项目用于单词拼写检查。

项目简介

word checker 用于单词拼写检查。

Github 地址

特性说明

支持 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<String> 返回所有匹配的纠正列表
判断单词拼写是否正确 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 提供的原始英语单词数据。

文档参考

ENABLE word list

spell-correct

spellchecking

猜你喜欢

转载自blog.51cto.com/9250070/2157690
今日推荐