當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


GO StructTag.Lookup用法及代碼示例

GO語言"reflect"包中"StructTag.Lookup"類型的用法及代碼示例。

用法:

func(tag StructTag) Lookup(key string)(value string, ok bool)

查找返回與標簽字符串中的鍵關聯的值。如果標簽中存在鍵,則返回值(可能為空)。否則返回值將是空字符串。 ok 返回值報告該值是否在標記字符串中顯式設置。如果標簽沒有常規格式,則 Lookup 返回的值是未指定的。

例子:

package main

import (
	"fmt"
	"reflect"
)

func main() {
	type S struct {
		F0 string `alias:"field_0"`
		F1 string `alias:""`
		F2 string
	}

	s := S{}
	st := reflect.TypeOf(s)
	for i := 0; i < st.NumField(); i++ {
		field := st.Field(i)
		if alias, ok := field.Tag.Lookup("alias"); ok {
			if alias == "" {
				fmt.Println("(blank)")
			} else {
				fmt.Println(alias)
			}
		} else {
			fmt.Println("(not specified)")
		}
	}

}

輸出:

field_0
(blank)
(not specified)

相關用法


注:本文由純淨天空篩選整理自golang.google.cn大神的英文原創作品 StructTag.Lookup。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。