Метод regexp.Regexp.Match

Метод Match проверяет, соответствует ли переданный байтовый срез регулярному выражению, на котором был вызван. Он возвращает true, если найдено хотя бы одно совпадение, и false в противном случае. Первым параметром метод принимает байтовый срез []byte, в котором нужно выполнить поиск, вторым параметром - само регулярное выражение.

Синтаксис

gore.Match(b []byte) bool

Пример

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

gopackage main

import (
  "fmt"
  "regexp"
)

func main() {
  re := regexp.MustCompile(`aba`)
  res := re.Match([]byte("abacaba"))
  fmt.Println(res)
}

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

gotrue

Пример

Давайте проверим, содержит ли строка 'abacaba' символы 'xyz':

gopackage main

import (
  "fmt"
  "regexp"
)

func main() {
  re := regexp.MustCompile(`xyz`)
  res := re.Match([]byte("abacaba"))
  fmt.Println(res)
}

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

gofalse

Пример

Давайте проверим, содержит ли строка '12345' хотя бы одну цифру:

gopackage main

import (
  "fmt"
  "regexp"
)

func main() {
  re := regexp.MustCompile(`\d`)
  res := re.Match([]byte("12345"))
  fmt.Println(res)
}

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

gotrue

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

  • метод regexp.Regexp.MatchString,
    который проверяет соответствие строки регулярному выражению
  • метод regexp.Regexp.Find,
    который находит первое совпадение в байтовом срезе
  • метод regexp.Regexp.FindAll,
    который находит все совпадения в байтовом срезе
  • функцию regexp.MatchString,
    которая проверяет соответствие строки регулярному выражению без компиляции