В Java регулярные выражения используют специальные символы. В следующей таблице представлены метасимволы доступные в синтаксисе регулярных выражений.
| Подвыражение
| Обозначение
|
| ^
| Соответствует началу строки.
|
| $
| Соответствует концу строки.
|
| .
| Соответствует любому одиночному символу, за исключением новой строки. Использование опции m делает возможным соответствие новой строке.
|
| [... ]
| Соответствует любому одиночному символу в квадратных скобках.
|
| [^... ]
| Соответствует любому одиночному символу вне квадратных скобок.
|
| \A
| Начало целой строки.
|
| \z
| Конец целой строки.
|
| \Z
| Конец целой строки, за исключением допустимого терминатора конца строки.
|
| re*
| Соответствует 0 либо более вхождений предыдущего выражения.
|
| re+
| Соответствует 1 либо более вхождений предыдущего выражения.
|
| re?
| Соответствует 0 либо 1 вхождению предыдущего выражения.
|
| re{ n}
| Соответствует заданному n числу вхождений предыдущего выражения.
|
| re{ n, }
| Соответствует n или большему числу вхождений предыдущего выражения.
|
| re{ n, m}
| Соответствует n как минимум и m в большинстве вложений предыдущего выражения.
|
| a| b
| Соответствует a или b.
|
| (re)
| Группирует регулярные выражения и запоминает сравниваемый текст.
|
| (?: re)
| Группирует регулярные выражения, не запоминая сравниваемый текст.
|
| (? > re)
| Соответствует независимому шаблону без возврата.
|
| \w
| Соответствует словесным символам.
|
| \W
| Соответствует символам, не образующим слова.
|
| \s
| Соответствует пробелу. Эквивалент [\t\n\r\f].
|
| \S
| Соответствует непробельному символу.
|
| \d
| Соответствует цифре. Эквивалент [0-9].
|
| \D
| Соответствует нечисловому символу.
|
| \A
| Соответствует началу строки.
|
| \Z
| Соответствует окончанию строки. При наличии новой строки, располагается перед ней.
|
| \z
| Соответствует концу строки.
|
| \G
| Соответствует точке, где оканчивается предыдущее совпадение.
|
| \n
| Обратная ссылка на группу сбора под номером " n".
|
| \b
| Соответствует границе слова вне квадратных скобок. Соответствует возврату на одну позицию (0x08) внутри квадратных скобок.
|
| \B
| Соответствуют границам символов, не образующих слова.
|
| \n, \t, etc.
| Соответствует символам перевода строки, возврата каретки, табуляции, и т. д.
|
| \Q
| Управление (цитирование) всех символов до символа \E.
|
| \E
| Окончание цитаты, открытой при помощи \Q.
|
Далее представлен список полезных методов экземпляра класса.
Методы индексов представляют полезные значения индекса, которые демонстрируют точное количество соответствий, обнаруженных в вводимой строке.
Методы исследования производят анализ вводимой строки и возврат булевого значения, отображающего наличие либо отсутствие шаблона.
Методы замены представляют полезные методы для замены текста в вводимой строке.
| №.
| Метод и описание
|
|
| 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) Возвращает литеральную замену Строки для указанной Строки. Данный метод производит сроку, которая будет функционировать в качестве литеральной замены s в методе appendReplacement класса Matcher.
|