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

Метод regexp.Regexp.Find

Метод Regexp.Find выполняет поиск первого совпадения с регулярным выражением в байтовом срезе. В качестве параметра метод принимает байтовый срез ([]byte), в котором производится поиск. Метод возвращает срез байт ([]byte), соответствующий первому найденному совпадению, или nil, если совпадение не найдено.

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

Синтаксис

re.Find(b []byte) []byte

Пример

Давайте найдем первое совпадение с регулярным выражением `\d+` (одна или более цифр) в строке "12345abcde67890":

package main import ( "fmt" "regexp" ) func main() { re := regexp.MustCompile(`\d+`) b := []byte("12345abcde67890") res := re.Find(b) fmt.Println(string(res)) }

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

"12345"

Пример

Давайте найдем первое совпадение с регулярным выражением `[a-z]+` (одна или более букв в нижнем регистре) в строке "12345abcde67890":

package main import ( "fmt" "regexp" ) func main() { re := regexp.MustCompile(`[a-z]+`) b := []byte("12345abcde67890") res := re.Find(b) fmt.Println(string(res)) }

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

"abcde"

Пример

Если совпадение не найдено, метод возвращает nil. Давайте попробуем найти буквы в строке, состоящей только из цифр:

package main import ( "fmt" "regexp" ) func main() { re := regexp.MustCompile(`[a-z]+`) b := []byte("1234567890") res := re.Find(b) fmt.Println(res == nil) }

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

"true"

Пример

Давайте найдем первое совпадение с регулярным выражением `\w+` (любые буквенно-цифровые символы и знак подчеркивания) в строке со специальными символами:

package main import ( "fmt" "regexp" ) func main() { re := regexp.MustCompile(`\w+`) b := []byte("hello!world@123") res := re.Find(b) fmt.Println(string(res)) }

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

"hello"

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

  • метод Regexp.FindAll,
    который находит все неперекрывающиеся совпадения
  • метод Regexp.FindString,
    который ищет первое совпадение в строке
  • метод Regexp.FindIndex,
    который возвращает индексы первого совпадения
  • метод Regexp.FindAllString,
    который находит все совпадения в строке
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить