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
Instrukcje do ćwiczenia
- Sprawdź, czy
quantityzawiera 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);
}
}
}