先回答問題:
什麽關系?都是描述語言的。
什麽區別?描述語言的範圍不一樣。
徹底讓你搞明白這個問題需要追本溯源一直追到 http://www. rfc-editor.org/rfc/bcp/ bcp47.txt 規範才行,不過這裏我簡單描述下一般也能懂。
=== 進入正文 ===
首先一個語言的描述規則是下面這樣的:
language-extlang-script-region-variant-extension-privateuse
語言文字種類-擴充套件語言文字種類-變體(或方言)-使用區域-變體(或方言)-擴充套件-私有
這些字串對應的值拼接起來可以對應一個準確的語言。為了方便辨識和辨識,通常還有約定:
所以你問題中的慣用寫法應該改成 zh-CN 和 zh-Hans。前者第二位用了地區限制匹配範圍,後者用了文字變體限制。具體值對應的內容可以在這裏搜尋 http://www. iana.org/assignments/la nguage-subtag-registry/language-subtag-registry 。幫你搬運過來就是:
%%
Type: region
Subtag: CN
Description: China
Added: 2005-10-16
%%
和
%%
Type: script
Subtag: Hans
Description: Han (Simplified variant)
Added: 2005-10-16
%%
所以區別就很明顯了:
=== update ===
Script 和 Variant 的區別不是很好區分,轉譯過來就更加不準確了,所以我在上面轉譯部份都將其轉譯為「變體(或方言)「,如果你對語言學比較了解,歡迎評論補充。