Регулярні вирази - це спеціальні послідовності сиволов, які допомагають нам знаходити рядки або безлічі рядків, використовуючи спеціальні синтаксичні шаблони.
Регулярні вирази в Java забезпечуються пакетом java.util.regex.
У пакеті java.util.regex ключовими є 3 класу:
- Matcher
Цей клсс інтерпретує шаблон і надає визначає збіги в водимо рядку. - Pattern
Клас Pattern надає нам скомпільований варіант регулярного виразу. - PatternSyntaxException
Цей клас надає нам непроверяемие виключення, які вказують нам на синтаксичну помилку в нашому регулярному виразі.
Схоплює група - це спосіб представити кілька символів, як єдиний елемент. Вони створюються шляхом розміщення символів всередині безлічі дужок. Наприклад, слово (car) створює єдину групу, яка складається з літер "c", "a" і "r".
Для того, щоб зрозуміти, як це застосовується на практиці, розглянемо приклад простого додатка.
В результаті роботи програми ми отримаємо такий результат:
Нижче наведено список символів, які ми можемо використовувати для регулярних виразів в мові програмування Java.
Методи класу Matcher
У класі Matcher є ряд методів, для визначення місця збіги.
- public int start ()
Повертає початковий індекс попереднього збігу. - public int start (int group)
Повертає початковий ідндекс підрядка, захопленої даною групою під час попереднього збігу. - public int end ()
Повертає зсув після крайнього збігається символу. - public int end (int group)
Повертає зсув після крайнього символу підрядка, захопленого даною групою під час крайнього збіги.
Методи пошуку призначені для того, щоб дізнатися чи є в водимо рядку зазначений шаблон (pattern).
Ось список методів пошуку:
- public boolean lookingAt ()
Шукає збіги вступної рядки і шаблону. - public boolean find ()
Шукає підрядок вступної рядки, яка збігається з шаблоном. - public boolean find (int start)
Шукає підрядок вступної рядки, яка збігається з шаблоном починаючи з зазначеного індексу. - public boolean matches ()
Шукає збігу всього рядка і шаблону.
Для заміщення тексту у вступній рядку в мові Java передбачені наступні методи:
- public Matcher appendReplacement (StringBuffer sb, String replacement)
Метод реалізує об'єднання і заміну рядка. - public StringBuffer appendTail (StringBuffer sb)
Метод реалізує об'єднання і заміну рядка. - public String replaceAll (String replacement)
Замінює всі підрядка вступної рядки, яка збігається з шаблоном, зазначеним у вступній рядку. - public String replaceFirst (String replacement)
Замінює першу подстроку вступної рядки, яка збігається з шаблоном. - public static String quoteReplacement (String s)
Цей метод повертає літералбную заміну стоки для зазначеного рядка.
Для розуміння того, як всі ці методи працюють на практиці, розглянемо приклади простих додатків.
В результаті роботи програми ми отримаємо наступний результат:
В результаті роботи програми ми отримаємо наступний результат:
В результаті роботи програми ми отримаємо наступний результат:
Метод appendReplacement ()
приклад:
В результаті роботи програми ми отримаємо наступний результат:
У цьому уроці ми вивчили що таое регулярні вирази і основні методи, які использутся при роботі з ними. Ми також розглянули приклади простих додатків з практичним застосуванням регулярних виразів.
У наступному уроці ми більш глибоко вивчимо, що таке методи і як вони працюють в мові програмування Java.
корисності
Трохи про себе
Вітаю! Мене звати Євгеній. На цьому сайті я пишу про речі, які мені цікаві (програмування, книги, спорт), а іноді, і просто про життя. Ви можете зв'язатися зі мною, надіславши електронного листа на мій email: [email protected] Має сенс, попередньо ознайомитися ось з цим FAQ розділом.