interpretString function

dynamic interpretString(
  1. String str
)

Implementation

dynamic interpretString(String str) {
  /*
  interprete un string, de tal forma que si es un numero, lo devuelva,
  si tiene solo letras (sin espacios), devuelve la cantidad de letras,
  y si no devuelva la cantidad de palabras sin contar las comas o los puntos.
  */
  final n = double.tryParse(str);
  if (n != null) return n;

  final words = str
      .replaceAll(RegExp(r'[.,]'), '')
      .split(' ')
      .where((w) => w.trim().isNotEmpty)
      .toList();
  if (words.length == 1) {
    return words[0].length;
  }
  return words.length;
}