Функция regexp.MatchReader
Функция regexp.MatchReader проверяет,
соответствует ли содержимое объекта, реализующего интерфейс
io.RuneReader, указанному регулярному выражению.
Она возвращает true, если содержимое соответствует
регулярному выражению, и false в противном случае.
Первым параметром функция принимает строку с регулярным выражением,
вторым - объект типа io.RuneReader, содержимое
которого нужно проверить.
Синтаксис
regexp.MatchReader(pattern, reader)
Пример
Давайте проверим, соответствует ли содержимое ридера строке "abcde" регулярному выражению "^abc":
package main
import (
"fmt"
"regexp"
"strings"
)
func main() {
reader := strings.NewReader("abcde")
res, err := regexp.MatchReader("^abc", reader)
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println(res)
}
Результат выполнения кода:
true
Пример
Давайте проверим, соответствует ли содержимое ридера строке "12345" регулярному выражению "[0-9]+":
package main
import (
"fmt"
"regexp"
"strings"
)
func main() {
reader := strings.NewReader("12345")
res, err := regexp.MatchReader("[0-9]+", reader)
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println(res)
}
Результат выполнения кода:
true
Пример
Давайте проверим, соответствует ли содержимое ридера строке "abcde" регулярному выражению "^xyz":
package main
import (
"fmt"
"regexp"
"strings"
)
func main() {
reader := strings.NewReader("abcde")
res, err := regexp.MatchReader("^xyz", reader)
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println(res)
}
Результат выполнения кода:
false
Смотрите также
-
функцию
regexp.Match,
которая проверяет соответствие для среза байтов -
функцию
regexp.MatchString,
которая проверяет соответствие для строки -
функцию
regexp.Compile,
которая компилирует регулярное выражение -
функцию
regexp.MustCompile,
которая компилирует регулярное выражение с паникой при ошибке