Рубрики

Метод начала (String) в Java с примерами

Метод start (String string) класса Matcher используется для получения начального индекса результата уже выполненного сопоставления из указанной строки.

Синтаксис:

public int start(String string)

Параметры: Этот метод принимает строку параметров, которая является строкой, из которой требуется начальный индекс сопоставленного шаблона.

Возвращаемое значение: этот метод возвращает индекс первого символа, соответствующего указанной строке.

Исключение: этот метод выдает:

  • IllegalStateException, если ни одно сопоставление еще не было предпринято или предыдущая операция сопоставления завершилась неудачно.
  • IndexOutOfBoundsException, если в шаблоне с заданным именем нет группы захвата.

Ниже приведены примеры, иллюстрирующие метод Matcher.start ():

Пример 1:

// Java-код для иллюстрации метода start ()

  

import java.util.regex.*;

  

public class GFG {

    public static void main(String[] args)

    {

  

        // Получаем регулярное выражение для проверки

        String regex = "\\b(?<Geeks>[A-Za-z\\s]+)";

  

        // Создать шаблон из регулярного выражения

        Pattern pattern

            = Pattern.compile(regex);

  

        // Получить строку для сопоставления

        String stringToBeMatched

            = "GeeksForGeeks";

  

        // Создать совпадение для входной строки

        Matcher matcher

            = pattern

                  .matcher(stringToBeMatched);

  

        // Получить текущее состояние соответствия

        MatchResult result

            = matcher.toMatchResult();

        System.out.println("Current Matcher: "

                           + result);

  

        while (matcher.find()) {

            // Получить первый индекс результата совпадения

            System.out.println(matcher.start("Geeks"));

        }

    }

}

Выход:

Current Matcher: java.util.regex.Matcher[pattern=\b(?[A-Za-z\s]+) region=0,13 lastmatch=]
0

Пример 2:

// Java-код для иллюстрации метода start ()

  

import java.util.regex.*;

  

public class GFG {

    public static void main(String[] args)

    {

  

        // Получаем регулярное выражение для проверки

        String regex = "\\b(?<GFG>[A-Za-z\\s]+)";

  

        // Создать шаблон из регулярного выражения

        Pattern pattern

            = Pattern.compile(regex);

  

        // Получить строку для сопоставления

        String stringToBeMatched

            = "   GFGFGFGFGFGFGFGFGFG";

  

        // Создать совпадение для входной строки

        Matcher matcher

            = pattern

                  .matcher(stringToBeMatched);

  

        // Получить текущее состояние соответствия

        MatchResult result

            = matcher.toMatchResult();

        System.out.println("Current Matcher: "

                           + result);

  

        while (matcher.find()) {

            // Получить первый индекс результата совпадения

            System.out.println(matcher.start("GFG"));

        }

    }

}

Выход:

Current Matcher: java.util.regex.Matcher[pattern=\b(?[A-Za-z\s]+) region=0,22 lastmatch=]
3

Ссылка: Oracle Doc

Рекомендуемые посты:

Метод начала (String) в Java с примерами

0.00 (0%) 0 votes