Application: CSpellBasic
I. Objective
To use CSpell APIs to correct spelling errors from the input term.
In NLP applications, we often want to correct spelling errors in the pre-process before further core process (such as name entity recognition, concept mapping, question answering, etc.). CSpell API can be implemented in Java for this purpose. This example illustrates the basic way to use CSpell APIs in the applications.
II. Pre-Requirements
install cSpell.${YEAR} package to "/Projects/cSpell${YEAR}"
III. Source Code
package cSpellExample; import gov.nih.nlm.nls.cSpell.Api.*; /***************************************************************************** * This class is the basic example to use CSpellApi to process an input string. * * @author chlu * * @version V-2018 *****************************************************************************/ public class CSpellBasic { // test driver public static void main(String[] args) { String configFile = "../../data/Config/cSpell.properties"; if(args.length == 1) { configFile = args[0]; } else if(args.length > 0) { System.out.println("Usage: java CSpellBasic <configFile>"); System.exit(0); } // init, use default function mode (RW) and ranking mode (CSpell) CSpellApi cSpellApi = new CSpellApi(configFile); // Process // read in file and process String inText = "CSpell corrects speling errorrs, mer ge andsplit for along time"; String outText = cSpellApi.ProcessToStr(inText); // print out System.out.println("----- Sample Code: CSpellBasic -----"); System.out.println("- In: [" + inText + "]"); System.out.println("- Out: [" + outText + "]"); // close cSpellApi.Close(); } }
IV. Compile
shell>javac -classpath ../lib/cSpell2018dist.jar CSpellBasic.java
V. Run & Results
shell>java -classpath ./:../lib/cSpell2018dist.jar:/Projects/cSpell2018/ CSpellBasic ----- Sample Code: CSpellBasic ----- - In: [CSpell corrects speling errorrs, mer ge andsplit for along time] - Out: [CSpell corrects spelling errors, merge and split for a long time]