Skip to content

ALMDart/dart_spell_checker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

82 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

spell_checker

A simple spell checker implementation in Dart. For now it only finds the single words from a given dictionary. Algorithm is different than Peter Norvig's implementation (http://norvig.com/spell-correct.html). This implementation is more complicated but probably much faster (finds several thousands matches in a second). It uses dynamic decoding over a simple trie generated from the dictionary. System finds words with a distance to the input. Deletions, insertions, substitutions and transpositions are supported.

import 'package:dart_spell/dart_spell.dart';

...
// optional distance parameter. Default is 1.0
var checker = new SingleWordSpellChecker(distance:1.0);

var dictionary = ["apple", "apples", "pear", "ear"];
checker.addWords(dictionary);	

List<Result> matches = checker.find("apple");
print(matches);

Output:
[apple:0.0, apples:1.0]

##TODO

  • Add less substitution penalty for near keys in keyboard layout.
  • Add language model support so that it gives more logical suggestions.
  • Add multi word spell suggestion with space and out of vocabulary word handling.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages