РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
445 of 1593 menu

Метод regexp.Regexp.NumSubexp

Метод NumSubexp возвращает общее количество подвыражений (захватывающих групп) в скомпилированном регулярном выражении. Подвыражениями считаются группы, заключенные в круглые скобки () в шаблоне. Метод не принимает никаких параметров и возвращает значение типа int. Важно отметить, что счетчик включает как именованные, так и неименованные группы. Нулевое подвыражение (все совпадение целиком) не учитывается.

Синтаксис

re.NumSubexp()

Пример

Давайте создадим регулярное выражение с двумя захватывающими группами и проверим, сколько подвыражений оно содержит:

package main import ( "fmt" "regexp" ) func main() { re := regexp.MustCompile(`(\d{3})-(\d{2})`) res := re.NumSubexp() fmt.Println(res) }

Результат выполнения кода:

2

Пример

Рассмотрим регулярное выражение без захватывающих групп:

package main import ( "fmt" "regexp" ) func main() { re := regexp.MustCompile(`\d+`) res := re.NumSubexp() fmt.Println(res) }

Результат выполнения кода:

0

Пример

Проверим работу метода с именованными группами и вложенными подвыражениями:

package main import ( "fmt" "regexp" ) func main() { re := regexp.MustCompile(`(?P<year>\d{4})-(?P<month>\d{2})-(?P<day>\d{2})`) res := re.NumSubexp() fmt.Println(res) }

Результат выполнения кода:

3

Смотрите также

  • метод SubexpNames,
    который возвращает имена всех подвыражений
  • метод SubexpIndex,
    который возвращает индекс подвыражения по его имени
  • функцию Compile,
    которая компилирует регулярное выражение
  • функцию MustCompile,
    которая компилирует регулярное выражение с паникой при ошибке
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить