public static bool IsLetter(int c)
{
var unicodeCategory = Char.GetUnicodeCategory((char)c);
return unicodeCategory == UnicodeCategory.LowercaseLetter ||
unicodeCategory == UnicodeCategory.UppercaseLetter ||
unicodeCategory == UnicodeCategory.TitlecaseLetter ||
unicodeCategory == UnicodeCategory.ModifierLetter ||
unicodeCategory == UnicodeCategory.OtherLetter;
}