GO语言"regexp"包中"Regexp.SubexpIndex"类型的用法及代码示例。
用法:
func(re *Regexp) SubexpIndex(name string) int
SubexpIndex 返回具有给定名称的第一个子表达式的索引,如果没有具有该名称的子表达式,则返回 -1。
请注意,可以使用相同的名称编写多个子表达式,例如 (?P<bob>a+)(?P<bob>b+),它声明了两个名为 "bob" 的子表达式。在这种情况下,SubexpIndex 返回正则表达式中最左边的此类子表达式的索引。
例子:
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"))
matches := re.FindStringSubmatch("Alan Turing")
lastIndex := re.SubexpIndex("last")
fmt.Printf("last => %d\n", lastIndex)
fmt.Println(matches[lastIndex])
}
输出:
true last => 2 Turing
相关用法
- GO Regexp.SubexpNames用法及代码示例
- GO Regexp.Split用法及代码示例
- GO Regexp.FindString用法及代码示例
- GO Regexp.FindAllIndex用法及代码示例
- GO Regexp.ReplaceAllLiteralString用法及代码示例
- GO Regexp.FindStringSubmatch用法及代码示例
- GO Regexp.FindAllString用法及代码示例
- GO Regexp.ExpandString用法及代码示例
- GO Regexp.FindAllStringSubmatch用法及代码示例
- GO Regexp.Match用法及代码示例
- GO Regexp.Longest用法及代码示例
- GO Regexp.FindStringIndex用法及代码示例
- GO Regexp.ReplaceAll用法及代码示例
- GO Regexp.Expand用法及代码示例
- GO Regexp.Find用法及代码示例
- GO Regexp.FindAllSubmatchIndex用法及代码示例
- GO Regexp.FindSubmatchIndex用法及代码示例
- GO Regexp.FindAllStringSubmatchIndex用法及代码示例
- GO Regexp.MatchString用法及代码示例
- GO Regexp.ReplaceAllString用法及代码示例
注:本文由纯净天空筛选整理自golang.google.cn大神的英文原创作品 Regexp.SubexpIndex。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。