在Golang中验证Locale字符串

时间:2016-06-09 17:52:51

标签: go locale

我正在尝试编写Go代码来检查字符串是否代表有效的语言环境。从文档中,我已经到了这里:

import "golang.org/x/text/language"

locale := "en"
tag, err := language.Parse(locale)
if err != nil {
    return errors.New("Invalid locale: " + locale)
}

我认为这应该有效,并且它似乎在大多数时间都有效,但是当我期望它时它并不总是给我一个错误。例如,如果我说locale := "bcd"我没有收到错误。

我在这里缺少什么?

1 个答案:

答案 0 :(得分:4)

bcd是针对North Babar语言的有效ISO 639-3语言代码,并且通过扩展,它是有效的区域设置名称。