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


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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。