当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


GO Regexp.SubexpNames用法及代码示例


GO语言"regexp"包中"Regexp.SubexpNames"类型的用法及代码示例。

用法:

func(re *Regexp) SubexpNames() []string

SubexpNames 返回此 Regexp 中带括号的子表达式的名称。第一个 sub-expression 的名称是 names[1],因此如果 m 是匹配切片,则 m[i] 的名称是 SubexpNames()[i]。由于无法命名整个 Regexp,因此 names[0] 始终为空字符串。不应修改切片。

例子:

package main

import (
	"fmt"
	"regexp"
)

func main() {
	re := regexp.MustCompile(`(?P<first>[a-zA-Z]+) (?P<last>[a-zA-Z]+)`)
	fmt.Println(re.MatchString("Alan Turing"))
	fmt.Printf("%q\n", re.SubexpNames())
	reversed := fmt.Sprintf("${%s} ${%s}", re.SubexpNames()[2], re.SubexpNames()[1])
	fmt.Println(reversed)
	fmt.Println(re.ReplaceAllString("Alan Turing", reversed))
}

输出:

true
["" "first" "last"]
${last} ${first}
Turing Alan

相关用法


注:本文由纯净天空筛选整理自golang.google.cn大神的英文原创作品 Regexp.SubexpNames。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。