1. A method of classifying a character string formed from a known number of hand-written characters, said method comprising the steps of: determining by a processor character probabilities for each hand-written character in the character string, each character probability representing a likelihood of the respective hand-written character being a respective one of a plurality of predetermined characters, each predetermined character has a respective character type; identifying by the processor character templates having the known number of characters, each character template having a respective predetermined probability and representing a respective combination of character types; determining by the processor character sequence probabilities corresponding to each of the character templates having the known number of characters, the character sequence probabilities being a function of the predetermined probability of the respective character template and the character probabilities of the hand-written character in the character string; and classifying by the processor the character string as the sequence of characters having the highest character sequence probability.