Извлечение цифр из строки в Android: методы и примеры кода

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

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

String inputString = "Hello123World456";
Pattern pattern = Pattern.compile("\\d+");
Matcher matcher = pattern.matcher(inputString);
while (matcher.find()) {
    String digits = matcher.group();
    // Process the extracted digits as needed
}

Метод 2: использование итерации символов.
Другой подход заключается в переборе каждого символа в строке и проверке, представляет ли он цифру. Если да, то мы можем собрать и обработать эти цифры.

String inputString = "Hello123World456";
StringBuilder digitsBuilder = new StringBuilder();
for (char c : inputString.toCharArray()) {
    if (Character.isDigit(c)) {
        digitsBuilder.append(c);
    }
}
String digits = digitsBuilder.toString();
// Process the extracted digits as needed

Метод 3. Использование StringTokenizer.
Класс StringTokenizer в Android предоставляет удобный способ токенизации строки на основе разделителей. Установив в качестве разделителя нецифровые символы, мы можем извлечь цифры из строки.

String inputString = "Hello123World456";
StringTokenizer tokenizer = new StringTokenizer(inputString, "\\D+");
StringBuilder digitsBuilder = new StringBuilder();
while (tokenizer.hasMoreTokens()) {
    String token = tokenizer.nextToken();
    digitsBuilder.append(token);
}
String digits = digitsBuilder.toString();
// Process the extracted digits as needed

Метод 4. Использование Apache Commons Lang.
Если вы уже используете библиотеку Apache Commons Lang в своем проекте Android, вы можете использовать класс StringUtils для извлечения цифр из строки.

String inputString = "Hello123World456";
String digits = StringUtils.getDigits(inputString);
// Process the extracted digits as needed

В этой статье мы рассмотрели несколько методов извлечения цифр из строки в Android. Мы рассмотрели методы использования регулярных выражений, итерации символов, StringTokenizer и Apache Commons Lang. В зависимости от ваших конкретных требований и зависимостей проекта вы можете выбрать метод, который лучше всего соответствует вашим потребностям.