normalize method

String normalize()

Normalizes a string by removing accents/diacritics.

This allows accent-insensitive searching. For example: "Médico" becomes "Medico", "São Paulo" becomes "Sao Paulo"

Implementation

String normalize() {
  const withAccents = 'ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ';
  const withoutAccents = 'AAAAAAaaaaaaOOOOOOooooooEEEEeeeeCcIIIIiiiiUUUUuuuuyNn';

  String normalized = this;
  for (int i = 0; i < withAccents.length; i++) {
    normalized = normalized.replaceAll(withAccents[i], withoutAccents[i]);
  }
  return normalized;
}