正则表达式是一种进行模式匹配和文本操纵的复杂而又强大的工具。
字符类
数量限定符
其他特殊字符
Go语言中使用正则表达式只需要两步即可:
- 解析、编译正则表达式。使用 regexp.MustCompile() 函数
func MustCompile(str string) *Regexp
函数的主要作用是将正则表达式中,奇形怪状的符号(如.*?\[ ...)转换成 Go语言能识别的格式,并将其存成结构体格式,方便编译器识别。
参数:正则表达式字串。建议使用反引号。
返回值:编译后的结构体。解析失败时会产生panic错误。
- 根据解析好的规则(结构体形式),从指定字符串中提取需要的信息。使用FindAllStringSubmatch() 函数
func (re *Regexp) FindAllStringSubmatch(s string, n int) [][]string
参数1:待解析的字符串。
参数2:匹配的次数。通常传-1,表示匹配所有。
返回值:返回成功匹配的[ ][ ]string。
说明:
[
[string1 string2]
[string1 string2]
[string1 string2]
]
其中:string1: 表示带有匹配参考项的全部字串。string2: 表示去除匹配参考项后的字串。
string[1]可以获取去除匹配参考项后的字符串
注意,要使用前面regexp.MustCompile() 函数调用的返回值,来调用此函数。