BCP 47 语言标签

BCP 47 语言标签是一串字符,它精确地指定了一种人类语言,包括基本语言,以及可选的文字系统和方言。例如,en 指定英语,而 en-GBen-US 则更精确地指定了英式英语和美式英语。

BCP 47 语言标签在 Web 平台中用于任何根据指定语言输出不同结果的功能,从而实现国际化支持。

示例包括

BCP 47 语法

完整的 BCP 47 语法在 RFC 5646 中指定。它能够识别极其具体的语言方言,但大多数用法要简单得多。

语言标签由连字符分隔的子标签组成,每个子标签表示语言的某个属性。最常见的三个子标签是:

语言子标签

一个 2 或 3 个字符的代码,定义了基本语言,通常全部小写。例如,英语的语言代码是 en,Badeshi 语的代码是 bdz

文字子标签 可选

此子标签定义了语言使用的文字系统,始终为 4 个字符长,首字母大写。例如,法语盲文是 fr-Brai,片假名书写的日语是 ja-Kana

注意:如果语言以高度典型的方式书写,例如拉丁字母的英语,则无需使用此子标签。

地区子标签 可选

此子标签定义了来自特定位置的基础语言的方言,它要么是两个大写字母(与国家代码匹配),要么是三个数字(与非国家地区匹配)。例如,es-ES 表示西班牙使用的西班牙语,es-013 表示中美洲使用的西班牙语。“国际西班牙语”则只是 es

如果文字子标签和地区子标签都存在,则文字子标签在地区子标签之前 — ru-Cyrl-BY 是俄语,用西里尔字母书写,在白俄罗斯使用。

另见