跳至內容

詞語定序

維基百科,自由的百科全書

詞語定序,或稱定序(英語:Collation,目前沒有公認的譯名,但不少資訊領域者,如微軟[1],根據其內涵而譯作「定序」,或有譯作「文字排序」[註 1]),是指在計算機科學圖書館學、詞典編撰中書寫信息的標準排序。如數值序英語numerical order或者字母序 。形式上說,定序方法對所有可能的標識符(即排序鍵英語sort key)集合定義了一個全序,因此在信息項的集合上產生了一個全預序英語total preorder(因為具有相同的排序鍵英語sort key的信息項沒有預定次序)。

定序算法,如統一碼定序演算法,則定義如何比較兩個字符串確定何者在先。

數值序或者編年序

[編輯]

表示數值(或時間)的字符串按照其表示的數值,例如: "-4", "2.5", "10", "89", "30,000". 注意可能會存在偏序情況,如"2"與"2.0","2e3"與"2000"。

字母序

[編輯]

字母序,也稱詞典序。常見問題有:

  • 空白符英語Whitespace character(如空格符)如何處理;
  • 附加符號。法語中把帶附加符號的字符都當作基本字符來排序。德語的「電話簿序」中,Ä, Ö, Ü應當作為 "ae", "oe", "ue" 來排序。因此,姓Müller/Mueller具有相同的排序位置。西班牙語的Ñ作為一個單獨字母排在N之後.
  • 姓名排序時,不論書寫或印刷時的姓與名誰在先,可能需要先按照姓,再按照名排序。
  • 以常見詞(如"the" 或 "a")開頭的信息項,排序時可能會忽略或者把這些前綴詞移動到最後來排序。
  • 愛爾蘭與蘇格蘭姓的常見前綴M'或Mc,可視作是MaC的縮寫,排序時按照非縮寫形式。如McKinley被視作Mackintosh
  • 連字(ligature),在英語中不被視作不同的字符,如Æ或Œ,排序時當作ae或ce。但在1994年之前的西班牙語, "CH"與"LL"作為單個字母,分別排在字母C與L之後,因此會如此排序「cinco, credo, chispa」或者「lomo, luz, llama」. 威爾斯語中,CH, DD, FF, NG, LL, PH, RH, TH都作為單獨的字母,排在其字符對的第一個字母之後(NG例外,排在G之後),因此有如下排序:A, B, C, CH, D, DD, E, F, FF, G, NG, H.
  • 字母與數字混排,有時可按照先數字後字母,或者把數字用字母拼寫後排序,如:1776按照"seventeen seventy-six"排序。

參見

[編輯]

外部連結

[編輯]

註釋

[編輯]
  1. ^ collation不限於字母排序,而是字符串的排序規則。

參考文獻

[編輯]
  1. ^ 檢視定序資訊 - SQL Server. docs.microsoft.com. 微軟. [2021-11-17] (中文(臺灣)).