НачатьНачать бесплатно

Сопоставление символов

В данных о продажах иногда встречаются опечатки или ошибки форматирования, которые могут нарушить анализ. Прежде чем рассчитывать общую выручку, необходимо убедиться, что все значения количества продаж содержат только допустимые цифровые символы и десятичные разделители. Вы извлекли несколько значений количества продаж (в миллионах единиц) из набора данных о видеоиграх.

Это упражнение является частью курса

Очистка данных на Java

Посмотреть курс

Инструкции к упражнению

  • Проверьте, содержит ли quantity цифры (от 0 до 9).
  • Найдите десятичный разделитель в quantity.
  • Определите наличие буквенных символов в quantity (строчных или прописных).

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

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);
        }
    }
}
Редактировать и запускать код