在Go语言中,可以使用正则表达式的FindAllStringSubmatch方法来遍历匹配结果。这个方法会返回一个二维字符串数组,其中每个元素是一个匹配结果的子匹配。以下是一个示例代码:
package main
import (
"fmt"
"regexp"
)
func main() {
// 定义正则表达式
re := regexp.MustCompile(`(\w+)\s(\w+)`)
// 要匹配的字符串
str := "Hello World, again World"
// 使用FindAllStringSubmatch方法查找匹配结果
matches := re.FindAllStringSubmatch(str, -1)
// 遍历匹配结果
for _, match := range matches {
for i, m := range match {
fmt.Printf("Match %d: %s\n", i, m)
}
}
}
在这个示例中,我们定义了一个简单的正则表达式来匹配字符串中的单词,然后使用FindAllStringSubmatch方法来查找所有匹配结果。最后,我们遍历匹配结果并打印每个子匹配。