No suele ser algo común que necesitemos un corrector ortográfico en nuestras aplicaciones web, pero por si alguien lo necesita, puede que este tutorial le venga bien.
El método es sencillo, obtenemos una lista de palabras en español (o el idioma que queramos) y la frecuencia con la que aparecen, para ello es bueno usar un libro o varios, obtener las palabras y calcular la frecuencia. Después, mediante la distancia Levenshtein, que nos devuelve el numero de letras que tenemos que modificar, insertar o borrar para que dos palabras sean las mismas, hacemos una lista de las palabras que los usuarios utilicen en nuestra aplicación (el buscador por ejemplo) y las palabras del diccionario, guardando solo aquellas relaciones que tengan una distancia 1 o 2.
Usando la lista con la relación entre palabras, cuando un usuario introduzca una palabra equivocada, le mostraremos las palabras que tengan una distancia 1 y si no hay, las que tengan una distancia 2.
Google, si mal no creo, a parte de este método lo que hace es controlar que palabras introducen los usuarios que no obtienen datos y las palabras que introduce después y que si obtienen datos.
Spelling Correction