去正则表达式字符串验证

Geo*_*e H 4 regex go

在 go 中有一个函数 MatchString 可用于将字符串与正则表达式匹配,但是,如果找到与正则表达式匹配的子字符串,则该函数返回 true。

是否有一种方法/类似函数仅在匹配整个字符串时才返回 true(例如,如果我有 [0-9]{2} 并且我的字符串是 213,则返回值应该是 false)。? 还是应该从正则表达式字符串本身完成?

Riz*_*man 6

尝试这个:

^[0-9]{2}$
Run Code Online (Sandbox Code Playgroud)

解释

去代码:

package main

import (
    "regexp"
    "fmt"
)

func main() {
    var re = regexp.MustCompile(`(?m)^[0-9]{2}$`)
    var str = `213`

    for i, match := range re.FindAllString(str, -1) {
        fmt.Println(match, "found at index", i)
    }
}
Run Code Online (Sandbox Code Playgroud)

在这里运行代码