Regular expression

import java.util.regex.*;
class RegTest{
public static void maint(String[]  args){
  Pattern p = new Pattern("ab");        // регулярное выражание
  Matcher m = p.matcher("abaaaba");  // текст
  while(m.find()){
    System.out.print(m.start() + " ");  // вывод: 0 4
  }
}
Примеры основных метасимволов:
  ^     - (крышка, цирркумфлекс) начало проверяемой строки
  $     - (доллар) конец проверяемой строки
  .     - (точка) представляет собой сокращенную форму записи для символьного класса, совпадающего с любым символом
  |     -  означает «или». Подвыражения, объединенные этим способом, называются альтернативами (alternatives)
  ?     - (знак вопроса) означает, что предшествующий ему символ является необязательным
  +     -  обозначает «один или несколько экземпляров непосредственно предшествующего элемента
  *     –  любое количество экземпляров элемента (в том числе и нулевое)
  \\d   –  цифровой символ
  \\D   –  не цифровой символ
  \\s   –  пробельный символ
  \\S   –  не пробельный символ
  \\w   –  буквенный или цифровой символ или знак подчёркивания
  \\W   –  любой символ, кроме буквенного или цифрового символа или знака подчёркивания

 Class Matcher
 boolean matches() просто указывает, соответствует ли вся входная последовательность шаблону.
 int start() указывает значение индекса в строке, где начинается соответствующая шаблону строка.
 int end() указывает значение индекса в строке, где заканчивается соответствующая шаблону строка плюс единица.
 String group() - возвращает найденную строку

 String group(int group) - если у Вас в регулярном выражении были группы, то можно вывести только кусочек строки соответствующей определенной группе.

Квантификаторы

+     - Одно или более (greed)
    - Ноль или более (greed)
?     - Ноль или одно (greed)
{n}   - Ровно n раз
{m,n} - От m до n включительно
{m,}  - Не менее m
{,n}  - Не более n

Теперь мы можем полностью понять регулярное выражение с самого первого примера: "^[a-z0-9_-]{3,15}$" .
Разберем её по кусочкам:
^ - начало строки
[a-z0-9_-] - символ который может быть маленькой латинской буквой или цифрой или символом подчеркивания.
{3,15} - предыдущий объект может повторяться от 3х до 15раз.

Комментариев нет:

Отправить комментарий