Zacznij terazZacznij za darmo

Dopasowywanie znaków

Dane sprzedażowe bywają obarczone literówkami lub błędami formatowania, które mogą zakłócić analizę. Zanim obliczysz łączny przychód, sprawdź, czy wszystkie wartości ilości sprzedaży zawierają wyłącznie prawidłowe znaki numeryczne i separatory dziesiętne. Z zestawu danych dotyczących gier wideo wyodrębniono kilka wartości ilości sprzedaży (w milionach sztuk).

To ćwiczenie jest częścią kursu

Czyszczenie danych w Javie

Zobacz kurs

Instrukcje do ćwiczenia

  • Sprawdź, czy quantity zawiera jakiekolwiek cyfry (od 0 do 9).
  • Poszukaj separatora dziesiętnego w quantity.
  • Wykryj ewentualne znaki alfabetyczne w quantity (małe lub wielkie litery).

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

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);
        }
    }
}
Edytuj i uruchom kod