normalize :: String -> String
normalize word = map toLower (strip_cruft word) where
  strip_cruft word' = subRegex (mkRegex "[^a-zA-Z]*(.*[a-zA-Z])[^a-zA-Z]*") word' "\\1"
normalize :: String -> String
normalize word = map toLower (strip_cruft word) where
  strip_cruft word' = subRegex (mkRegex "[^a-zA-Z]*(.*[a-zA-Z])[^a-zA-Z]*") word' "\\1"
normalize word = map toLower (strip_cruft word) where
  strip_cruft word' = subRegex (mkRegex "[^a-zA-Z]*(.*[a-zA-Z])[^a-zA-Z]*") word' "\\1"