CommencerCommencez gratuitement

Correspondance de caractères

Vos données de ventes contiennent parfois des fautes de frappe ou des erreurs de formatage qui peuvent fausser votre analyse. Avant de calculer le chiffre d’affaires total, vous devez vérifier que toutes les quantités vendues ne contiennent que des chiffres valides et des points décimaux. Vous avez extrait certaines quantités vendues (en millions d’unités) à partir du jeu de données sur les jeux vidéo.

Cet exercice fait partie du cours

<cours>Nettoyer des données en Java</cours>
Voir le cours

Instructions de l’exercice

  • Vérifiez si quantity contient des chiffres (de 0 à 9).
  • Recherchez le séparateur décimal dans quantity.
  • Détectez tout caractère alphabétique dans quantity (minuscule ou majuscule).

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

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);
        }
    }
}
Modifier et exécuter le code