Сканирование строки в Java: сканер, разделение строк, StringTokenizer и регулярные выражения

Для сканирования строки в Java вы можете использовать различные методы в зависимости от ваших конкретных требований. Вот некоторые часто используемые методы:

  1. Класс Scanner: вы можете использовать класс Scannerдля чтения входных данных из различных источников, включая строки. Вот пример того, как можно сканировать строку с помощью Scanner:
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("Enter a string: ");
        String input = scanner.nextLine();
        System.out.println("You entered: " + input);
    }
}
  1. String Split(): вы можете использовать метод split()класса String, чтобы разделить строку на массив подстрок на основе указанного разделителя.
String input = "Hello, World!";
String[] parts = input.split(", ");
System.out.println(Arrays.toString(parts));

Выход:

[Hello, World!]
  1. Класс StringTokenizer. Класс StringTokenizerпозволяет разбивать строку на токены на основе указанного разделителя. Вот пример:
import java.util.StringTokenizer;
public class Main {
    public static void main(String[] args) {
        String input = "Hello, World!";
        StringTokenizer tokenizer = new StringTokenizer(input, ", ");
        while (tokenizer.hasMoreTokens()) {
            String token = tokenizer.nextToken();
            System.out.println(token);
        }
    }
}

Выход:

Hello
World!
  1. Регулярные выражения. Вы можете использовать регулярные выражения с классами Patternи Matcherдля сканирования строки и извлечения определенных шаблонов. Вот пример:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main {
    public static void main(String[] args) {
        String input = "Hello, World!";
        Pattern pattern = Pattern.compile("\\w+");
        Matcher matcher = pattern.matcher(input);
        while (matcher.find()) {
            System.out.println(matcher.group());
        }
    }
}

Выход:

Hello
World