LanguageTool最简范例代码

简介: LanguageTool最简范例代码

说明中有这些代码。如果能搜索到这个博文也行:

package taishan.languagetool;
import java.io.IOException;
import java.util.Arrays;
import java.util.List;
import org.languagetool.JLanguageTool;
import org.languagetool.language.BritishEnglish;
import org.languagetool.language.Chinese;
import org.languagetool.rules.Rule;
import org.languagetool.rules.RuleMatch;
import org.languagetool.rules.spelling.SpellingCheckRule;
public class LanguageToolTest
{
  private static void testEnglish() throws IOException
  {
  JLanguageTool langTool = new JLanguageTool(new BritishEnglish());
     // comment in to use statistical ngram data:
     //langTool.activateLanguageModelRules(new File("/data/google-ngram-data"));
     List<RuleMatch> matches = langTool.check("A sentence with a error in the Hitchhiker's Guide tot he Galaxy");
     for (RuleMatch match : matches) {
       System.out.println("Potential error at characters " +
           match.getFromPos() + "-" + match.getToPos() + ": " +
           match.getMessage());
       System.out.println("Suggested correction(s): " +
           match.getSuggestedReplacements());
     }
     for (Rule rule : langTool.getAllActiveRules()) {
         if (rule instanceof SpellingCheckRule) {
           List<String> wordsToIgnore = Arrays.asList("specialword", "myotherword");
           ((SpellingCheckRule)rule).addIgnoreTokens(wordsToIgnore);
         }
     }
     for (Rule rule : langTool.getAllActiveRules()) {
         if (rule instanceof SpellingCheckRule) {
           ((SpellingCheckRule)rule).acceptPhrases(Arrays.asList("foo bar", "producct namez"));
         }
     }
  }
  private static void testChinese() throws IOException
  {
  JLanguageTool langTool = new JLanguageTool(new Chinese());
     List<RuleMatch> matches = langTool.check("泰山OFFICE要与WORD媲美!");
     for (RuleMatch match : matches) {
       System.out.println("可能拼写错误 " +
           match.getFromPos() + "-" + match.getToPos() + ": " +
           match.getMessage());
       System.out.println("建议修正(s): " +
           match.getSuggestedReplacements());
     }     
  }
  public static void main(String[] args)
  {
  try
  {
    long startTime = System.currentTimeMillis();
    testEnglish();
    System.out.println("testEnglish() cost="+(System.currentTimeMillis()-startTime));
    testChinese();
    System.out.println("testChinese() cost="+(System.currentTimeMillis()-startTime));
  }
  catch (Exception e)
  {
    e.printStackTrace();
  }
  }
}
目录
相关文章
|
8月前
|
自然语言处理 Linux 编译器
C语言进阶第十一节 --------程序环境和预处理(包含宏的解释)-1
C语言进阶第十一节 --------程序环境和预处理(包含宏的解释)
|
8月前
|
存储 Linux C语言
C语言进阶第十一节 --------程序环境和预处理(包含宏的解释)-2
C语言进阶第十一节 --------程序环境和预处理(包含宏的解释)
|
NoSQL Java 数据库
解释afterPropertiesSet方法的用处
解释afterPropertiesSet方法的用处
|
前端开发 开发者
评论列表案例-演示艾特符号替代相对路径的好处|学习笔记
快速学习评论列表案例-演示艾特符号替代相对路径的好处
460 0
|
Shell
【shell】编写脚本基础、理论知识、参数定义、符号运算(下)
文章目录 前言 一、定义 二、规范 2.1 首行规范 2.2 执行方式 2.3 脚本错误 三、参数 3.1 变量分类 3.1.1 内置变量 3.1.2 预定义变量
112 0
【shell】编写脚本基础、理论知识、参数定义、符号运算(下)
|
Java Maven
编写一个 spootboot 程序,有二个方法,一个问早上好,一个说再见
编写一个 spootboot 程序,有二个方法,一个问早上好,一个说再见
|
Shell
学习shell脚本编程-变量的替换
学习shell脚本编程-变量的替换
125 0
|
Shell Perl
【shell】编写脚本基础、理论知识、参数定义、符号运算(上)
文章目录 前言 一、定义 二、规范 2.1 首行规范 2.2 执行方式 2.3 脚本错误 三、参数 3.1 变量分类 3.1.1 内置变量 3.1.2 预定义变量
118 0
|
前端开发
评论列表案例-演示艾特符号替代相对路径的好处
评论列表案例-演示艾特符号替代相对路径的好处
|
编译器 C# C++
☀️ 学会编程入门必备 C# 最基础知识介绍(六)——接口、命名空间、预处理指令、正则表达式、异常处理、文件的输入与输出
前言👻 接口(interface)🎉 定义接口: MyInterface.cs 接口继承: InterfaceInheritance.cs C# 命名空间(Namespace)🎈 定义命名空间 using 关键字 嵌套命名空间 C# 预处理器指令🎄 C# 预处理器指令列表 #define 预处理器 条件指令 C# 正则表达式🔔 定义正则表达式 C# 异常处理🎃 语法 C# 中的异常类 异常处理 创建用户自定义异常 抛出对象 C# 文件的输入与输出⛄️ C# I/O 类 FileStream 类 C# 高级文件操作
☀️ 学会编程入门必备 C# 最基础知识介绍(六)——接口、命名空间、预处理指令、正则表达式、异常处理、文件的输入与输出