Coincidencia de caracteres
Tus datos de ventas a veces contienen erratas o errores de formato que pueden estropear tu análisis. Antes de calcular los ingresos totales, necesitas comprobar que todas las cantidades de ventas contienen solo caracteres numéricos válidos y puntos decimales. Has extraído algunas cantidades de ventas (en millones de unidades) del conjunto de datos de videojuegos.
Este ejercicio forma parte del curso
Limpieza de datos en Java
Instrucciones del ejercicio
- Comprueba si
quantitycontiene algún dígito (del 0 al 9). - Busca el separador decimal en
quantity. - Detecta cualquier carácter alfabético en
quantity(minúscula o mayúscula).
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
public class PatternValidation {
public static void main(String[] args) {
List quantities = Arrays.asList("41.49", "29.08", "15.85", "12.5x");
for (String quantity : quantities) {
// Check if quantity contains any digits
boolean hasDigits = ____.____('0', '9').matchesAnyOf(quantity);
// Look for decimal separator in quantity
boolean hasDecimal = CharMatcher.is('.').____(quantity);
// Detect any alphabetic characters in quantity
boolean hasInvalidChars = CharMatcher.inRange('____', '____')
.or(CharMatcher.inRange('____', '____')).matchesAnyOf(quantity);
boolean isValid = hasDigits && hasDecimal && !hasInvalidChars;
System.out.println(quantity + " has valid characters: " + isValid);
}
}
}