我來自 Python,所以我可能只是沒有以正確的方式看待這個問題。我想創(chuàng)建一個相當復(fù)雜的正則表達式,并能夠訪問按名稱匹配的字段。我似乎找不到一個很好的例子。我設(shè)法得到的最接近的是:package mainimport ( "fmt" "regexp")var myExp = regexp.MustCompile(`(?P<first>\d+)\.(\d+).(?P<second>\d+)`)func main() { fmt.Printf("%+v", myExp.FindStringSubmatch("1234.5678.9")) match := myExp.FindStringSubmatch("1234.5678.9") for i, name := range myExp.SubexpNames() { fmt.Printf("'%s'\t %d -> %s\n", name, i, match[i]) } //fmt.Printf("by name: %s %s\n", match["first"], match["second"])}注釋掉的行是我期望在 Python 中訪問命名字段的方式。在 go 中執(zhí)行此操作的等效方法是什么?或者,如果我需要將匹配項轉(zhuǎn)換為地圖,那么制作然后訪問地圖的最慣用的方法是什么?
- 3 回答
- 0 關(guān)注
- 353 瀏覽
添加回答
舉報
0/150
提交
取消