removeDiacritics method

String removeDiacritics()

Removes diacritical marks from the string, replacing them with their base ASCII equivalents (e.g., 'é' becomes 'e').

This method is optimized to perform well by using a pre-computed map.

Implementation

String removeDiacritics() {
  // If the string is empty, return an empty string immediately.
  if (isEmpty) {
    return '';
  }

  // Use the pre-computed reversed map for an efficient lookup.
  // We map each character: if it's in our map, we replace it; otherwise,
  // we keep the original. Then we join the characters back into a string.
  return split('').map((String char) => _reverseAccentsMap[char] ?? char).join('');
}