Aan de slagBegin gratis

Tekens matchen

Je verkoopgegevens bevatten soms typfouten of opmaakfouten die je analyse kunnen breken. Voordat je de totale omzet berekent, moet je controleren of alle verkoopaantallen alleen geldige numerieke tekens en decimaaltekens bevatten. Je hebt enkele verkoopaantallen (in miljoenen eenheden) uit de videogamegegevensset gehaald.

Deze oefening maakt deel uit van de cursus

Data opschonen in Java

Bekijk cursus

Oefeninstructies

  • Controleer of quantity cijfers bevat (0 tot en met 9).
  • Zoek de decimale scheidingsteken in quantity.
  • Detecteer alfabetische tekens in quantity (kleine letters of hoofdletters).

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

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);
        }
    }
}
Code bewerken en uitvoeren