Домой Учебники по Java и J2EE Многофункциональное руководство по Java Regex, Matcher Pattern и регулярным выражениям

Многофункциональное руководство по Java Regex, Matcher Pattern и регулярным выражениям

493
0

В этом уроке мы рассмотрим список Matcher ( java.util.regex.Matcher ) API. Некоторое время назад я написал учебник по Java Regex, который охватывает широкий спектр примеров.

Регулярное выражение — это шаблон поиска для String. java.util.regex Классы для сопоставления последовательностей символов с шаблонами, заданными регулярными выражениями в Java .

Этот учебник лучше всего работает, если у вас есть какие-либо из следующих вопросов:

  • Java Regex — Учебное пособие
  • Учебные руководства по регулярным выражениям Java
  • Что такое регулярное выражение в Java?
  • Что такое шаблон в Java?
  • пример соответствия шаблону java и специальные символы java regex

Давайте начнем.

  1. Создать класс CrunchifyPatternMatcherTutorial.java
  2. Создайте различные методы для проверки ниже API Matcher:
    • Матчи()
    • смотря на()
    • findStartEnd ()
    • группа ()
    • multipleGroups ()
    • заменить все()
  3. Вывести результат каждого API.

Матчи()

matches() пытается сопоставить всю строку с шаблоном. Возвращается true если и only if , вся последовательность региона соответствует шаблону этого сопоставителя.

смотря на()

lookingAt() функциональность точно такая же, как matches() за исключением того, что он пытается сопоставить входную последовательность, начиная с начала региона, с шаблоном. Он возвращает true, если и только если префикс входной последовательности соответствует шаблону этого сопоставителя.

find (), start () и end ()

find() пытается найти следующую подпоследовательность входной последовательности, которая соответствует шаблону. start() пытается вернуть начальный индекс предыдущего матча и end() пытается вернуть индекс конца предыдущего совпадения.

группа ()

group() возвращает входную подпоследовательность, совпадающую с предыдущим соответствием. Это как совпадение между start () и end ().

multipleGroups

multiplegroups может быть представлен как «(строка) (строка)».

Образец: String crunchifyPattern = "(is) (.+?) (.+?) ";

заменить все()

replaceAll() заменяет каждую подпоследовательность входной последовательности, которая соответствует шаблону с данной строкой замены .

Вот полный пример:

CrunchifyPatternMatcherTutorial.java

Джава
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
пакет crunchify. ком . учебные пособия ;
Импортировать Java. Util. регулярное выражение. Matcher ;
Импортировать Java. Util. регулярное выражение. Образец ;
/ **
* @author Crunchify.com
*
* /
общественности учебный класс CrunchifyPatternMatcherTutorial {
общественности статический недействительным main ( Строка [ ] аргументы ) {
строка crunchifyData знак равно Это пример шаблона Java Regex. Https://crunchify.com. Это список всех примеров Matcher ;
Система. вне. println ( «Это пример данных« crunchifyData »:» + crunchifyData ) ;
совпадения ( crunchifyData ) ;
lookingAt ( crunchifyData ) ;
findStartEnd ( crunchifyData ) ;
строка crunchifyData2 знак равно «Crunchify — веб-компания. Google — поисковая компания. Facebook — социальная компания». ;
группа ( crunchifyData2 ) ;
множественные группы ( crunchifyData2 ) ;
replaceAll ( crunchifyData2 ) ;
}
// crunchifyMatcher.replaceAll ()
частный статический недействительным replaceAll ( Строка crunchifyData2 ) {
строка crunchifyPattern знак равно компания ;
Шаблон погладить знак равно Pattern. compile ( crunchifyPattern ) ;
Matcher crunchifyMatcher знак равно пат . согласовани (crunchifyData2);
строка updatedString знак равно crunchifyMatcher . replaceAll ( «лучшая компания» ) ;
Система. вне. println ( replaceAll () — обновленная строка: + updatedString ) ;
}
частный статический недействительным множественные группы ( строка crunchifyData2 ) {
строка crunchifyPattern знак равно (есть) (. +?) (. +?) ;
Шаблон погладить знак равно Pattern. compile ( crunchifyPattern ) ;
Matcher crunchifyMatcher знак равно пат . согласовани (crunchifyData2);
в то время как ( crunchifyMatcher . find ( ) ) {
Система. вне. println ( multipgGroup () результат: + crunchifyMatcher . группа ( ) ) ;
}
}
// crunchifyMatcher.group ()
частный статический недействительным группа ( Строка crunchifyData2 ) {
строка crunchifyPattern знак равно компания ;
Шаблон погладить знак равно Pattern. compile ( crunchifyPattern ) ;
Matcher crunchifyMatcher знак равно пат . согласовани (crunchifyData2);
в то время как ( crunchifyMatcher . find ( ) ) {
Система. вне. println ( group () result: + crunchifyMatcher . группа ( ) ) ;
}
}
// crunchifyMatcher.find () — start () — end ()
частный статический недействительным findStartEnd ( String crunchifyData ) {
строка crunchifyPattern знак равно «Пример» ;
Шаблон погладить знак равно Pattern. compile ( crunchifyPattern ) ;
Matcher crunchifyMatcher знак равно пат . согласовани (crunchifyData);
ИНТ общее количество знак равно 0 ;
в то время как ( crunchifyMatcher . find ( ) ) {
totalCount ++ ;
Система. вне. println ( findStartEnd result = Iteration + общее количество + : + crunchifyMatcher . начало ( ) +
+ crunchifyMatcher . конец ( ) ) ;
}
}
// crunchifyMatcher.lookingAt ()
частный статический недействительным LookingAt ( Строка crunchifyData ) {
строка crunchifyPattern знак равно «Это Java» ;
Шаблон погладить знак равно Pattern. compile ( crunchifyPattern ) ;
Matcher crunchifyMatcher знак равно пат . согласовани (crunchifyData);
логический isLookingAt знак равно crunchifyMatcher . LookingAt ( ) ;
Система. вне. println ( LookingAt () результат 1: + isLookingAt ) ;
crunchifyPattern знак равно Ява ;
похлопывание знак равно Pattern. compile ( crunchifyPattern ) ;
crunchifyMatcher знак равно пат . согласовани (crunchifyData);
isLookingAt знак равно crunchifyMatcher . LookingAt ( ) ;
Система. вне. println ( LookingAt () результат 2: + isLookingAt ) ;
}
// crunchifyMatcher.matches ()
общественности статический недействительным спички ( Строка crunchifyData ) {
строка crunchifyPattern знак равно . * http: //.* ;
Шаблон погладить знак равно Pattern. compile ( crunchifyPattern ) ;
Matcher crunchifyMatcher знак равно пат . согласовани (crunchifyData);
логический isMatched знак равно crunchifyMatcher . спички ( ) ;
Система. вне. println ( match () result: + isMatched ) ;
}
}

Eclipse Console Результат:

1
2
3
4
5
6
7
8
9
10
11
12
13
это является выборочные данные 'crunchifyData' : это является Пример шаблона Java Regex . https : //crunchify.com. Это список всех примеров Matcher
спички ( ) результат : правда
LookingAt ( ) результат 1 : правда
LookingAt ( ) результат 2 : ложный
результат findStartEnd знак равно итерация 1 : 27 34
результат findStartEnd знак равно итерация 2 : 90 97
группа ( ) результат : Компания
группа ( ) результат : Компания
группа ( ) результат : Компания
множественная группа ( ) результат : является Web
множественная группа ( ) результат : является Поиск
множественная группа ( ) результат : является Социальное
replaceAll ( ) обновленная строка : Хрустеть это Веб лучшая компания . Google это Поиск лучшей компании . Facebook это социальная лучшая компания .
Многофункциональное руководство по Java Regex, Matcher Pattern и регулярным выражениям

0.00 (0%) 0 votes

ЧИТАТЬ ТАКЖЕ:  Как проверить адрес электронной почты, используя Java Mail API?

ОСТАВЬТЕ ОТВЕТ

Пожалуйста, введите ваш комментарий!
пожалуйста, введите ваше имя здесь