Нередко нужно проверить верность входных данных, пройтись по документу в поисках определенной информации или даже очистить строку от нежелательных символов экранирования. Обычно для этого используются регулярные выражения.

В стандартной библиотеке Go есть пакет regexp, что нужен для операций с регулярными выражениями.

Премиум 👑 канал по Golang

Рекомендуем вам супер TELEGRAM канал по Golang где собраны все материалы для качественного изучения языка. Удивите всех своими знаниями на собеседовании! 😎

Подписаться на канал

Уроки, статьи и Видео

Мы публикуем в паблике ВК и Telegram качественные обучающие материалы для быстрого изучения Go. Подпишитесь на нас в ВК и в Telegram. Поддержите сообщество Go программистов.

Go в ВК ЧАТ в Telegram


Как найти текст в строке с помощью регулярного выражения в Go?

1. Создайте файл regexp.go со следующим содержимым:

2. Запустите код через go run regexp.go;
3. Посмотрите на вывод в терминале:

поиск в строке go

Пакет Regexp — Функции FindString() и FindAllString()

Функции FindString и FindAllString являются самым простым способом поиска совпадающего паттерна в указанной строке. Единственное разница в том, что метод FindString из Regexp вернут только первое найденное совпадение. С другой стороны, метод FindAllString, на что намекает название, вернет срез строк со всеми найденными совпадениями.

Тип Regexp предлагает обширный набор методов с префиксом FindXXX. В данной инструкции описываются только вариации String, которые обычно наиболее полезны. Обратите внимание, что в предыдущем коде используется функция MustCompile из пакета regexp, что может привести к сбою в случае неправильного регулярного выражения.

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

5 1 голос
Рейтинг статьи
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии