English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
класс java.util.regex.Matcher представляет собой двигатель для выполнения различных операций соответствия. Этот класс не имеет конструктора и может быть использованmatches()
метода класса java.util.regex.Pattern создает/получает объект этого класса.
класс Matcherstart()метод возвращает начальный индекс соответствующего символа.
Пример
дочерний выражение « [...]» соответствует指定的字符 в фигурных скобках в вводимой строке. В следующем примере используется это выражение для соответствия字符у t. Здесь,
Мы уже используем этоcompile()
Метод компилирует регулярное выражение.
Получение объекта Matcher.
matcher()
Вызов该方法 на каждом соответствии.
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class StartExample { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Введите текст ввода:"); String input = sc.nextLine(); String regex = "[t]"; //Создание объекта шаблона Pattern pattern = Pattern.compile(regex); //Соответствие строки с уже скомпилированным шаблоном Matcher matcher = pattern.matcher(input); int count = 0; while (matcher.find()) { int start = matcher.start(); System.out.println(start); } } }
Результат вывода
Введите текст ввода: Привет, как дела? Добро пожаловать в w3codebox 26 31 42
Поскольку символ t в вводимой строке встречается три раза, вы можете观察到 три индексных значения (представляющие индекс каждого символа).