English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
ТекстКласс java.util.regex.Matcher представляет движок для выполнения различных операций совпадения. Этот класс не имеет конструктора, его можно использовать
matches()
Метод class java.util.regex.Pattern создает/получает объект этого класса.usePattern()Метод принимает объект Pattern, представляющий новый регулярный выражение, и использует его для поиска соответствий.
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class UsePatternExample { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Введите текст ввода:"); String input = sc.nextLine(); String regex = "[#%&*]"; //Создание объекта шаблона Pattern pattern = Pattern.compile(regex); //Создание объекта Matcher Matcher matcher = pattern.matcher(input); int count = 0; while(matcher.find()) { count++; } //Искать используемый шаблон System.out.println("В указанном тексте есть " + count + " специальных символов [# % & *]"); //Создание新模式,接受的 символы от 5 до 6 Pattern newPattern = Pattern.compile("\\A(?=\\w{6,15}\\z)"); //Переключение на новый режим matcher = matcher.usePattern(newPattern); if(matcher.find()) { System.out.println("Указанное входное значение содержит 6 до 15 символов"); } else { System.out.println("Указанное входное значение не содержит 6 до 15 символов"); } } }
Результат вывода
Введите текст ввода: #*mypassword& В указанном тексте есть 3 специальных символа [# % & *] !!mypassword! Указанное входное значение не содержит 6 до 15 символов