정렬/순서

최근 수정 시각: (5년 전)
목차
1. 개요2. 정렬 관련 용어3. 한글4. 라틴 문자5. 가나6. 키릴 문자7. 그리스 문자8. 주음부호9. 한자
9.1. 독음 순 정렬9.2. 부수-나머지 획수 순 정렬
10. 아랍 문자11. 히브리 문자12. 단순 유니코드 순 정렬

1. 개요 [편집]

이 문서에서는 문자·언어별 정렬 순서를 다룬다. 사전을 찾아볼 때나 정렬에 관련된 프로그래밍을 할 때 유용할 것이다.

여러 언어가 같은 문자 체계를 공유하는 경우도 있으므로 문자별로 단락을 만들어서 정리하도록 하고, 같은 문자에 다른 정렬 순서가 적용되는 경우 하위 단락으로 만들 것.

2. 정렬 관련 용어 [편집]

정렬에도 여러 가지 단계가 있다.

단계는 보통 primary difference, secondary difference, tertiary difference, quaternary difference 네 단계로 나눠지며, 라틴 문자와 가나의 경우 이 네 단계는 다음과 같이 분류된다.
  1. primary difference: 글자 자체가 다른 경우 (ab < ac < ad, はい < はう < はえ)
  2. secondary difference: 주로 diacritic 차이 (ab < áb < ac, はい < ばい < はう)
    diacritic이 없는 것이 있는 것보다 앞에 온다.
  3. tertiary difference: 대소문자 차이 (ab < Ab < áb, しゃ < しや < じゃ)
    보통 소문자가 대문자보다 앞에 온다.
  4. quaternary difference: 문장 부호 차이 (ab < a c < a-c < ac < ad)

위 예에서 ab와 ac, はい와 はう 사이에는 primary difference가 있고, ab와 áb, はい와 ばい 사이에는 secondary difference가 있으며, ab와 Ab, しゃ와 しや 사이에는 tertiary difference가 있으며, a c와 a-c, ac 사이에는 quaternary difference가 있다.

정렬 시에는 언제나 상위 단계가 우선적으로 적용된다. 즉 primary difference가 있을 경우 secondary difference 이하는 무시되며, primary difference가 없고 secondary difference가 있을 경우 tertiary difference 이하는 무시된다.

다만 secondary difference의 경우, '주로' diacritic 차이인 것을 염두에 두어야 한다. 만약 어떤 언어에서 á를 a와는 아예 다른 별개의 문자로 볼 경우, a와 á 사이에는 secondary difference가 아니라 primary difference가 있는 것이 되며, 이 경우 ab < ac < áb 순으로 정렬된다. diacritic이 붙은 문자와 붙지 않은 문자를 별개의 문자로 볼지(primary difference), 아니면 일단은 똑같은 문자로 볼지(secondary difference)는 언어에 따라 다르기 때문에 주의가 필요하다. 아래 '스페인어' 섹션을 보면 알겠지만 스페인어의 경우 a와 á 사이에는 secondary difference가 있지만 n과 ñ 사이에는 primary difference가 있다.

이 문서에서는 primary difference와 secondary difference만을 주로 다룬다.

3. 한글 [편집]

모든 낱자 사이에는 primary difference가 존재하며, 초성이 같을 경우 중성 순으로, 초성과 중성이 모두 같을 경우 종성 순으로 정렬된다.

3.1. 대한민국 표준어 [편집]

대한민국 표준어에서 사용되는 정렬 순서는 다음과 같다. 대개 가나다순이라고 한다.[1]
  • 초성: ㄱ ㄲ ㄴ ㄷ ㄸ ㄹ ㅁ ㅂ ㅃ ㅅ ㅆ ㅇ ㅈ ㅉ ㅊ ㅋ ㅌ ㅍ ㅎ
  • 중성: ㅏ ㅐ ㅑ ㅒ ㅓ ㅔ ㅕ ㅖ ㅗ ㅘ ㅙ ㅚ ㅛ ㅜ ㅝ ㅞ ㅟ ㅠ ㅡ ㅢ ㅣ
  • 종성: (없음) ㄱ ㄲ ㄳ ㄴ ㄵ ㄶ ㄷ ㄹ ㄺ ㄻ ㄼ ㄽ ㄾ ㄿ ㅀ ㅁ ㅂ ㅄ ㅅ ㅆ ㅇ ㅈ ㅊ ㅋ ㅌ ㅍ ㅎ
ㅐ는 ㅏ와 ㅣ의 합자로 보기 때문에 ㅏ와 ㅑ 사이에 온다. ㅒ, ㅔ, ㅖ 등도 마찬가지.

쌍자음의 경우 1989년의 현행 맞춤법 제정 전에는 명확한 규정이 없었다. ㄱ과 ㄲ을 예로 들자면, ㄲ을 ㄱ에 diacritic(?)이 붙은 것으로 취급하여 ㄱ과 ㄲ 사이에 secondary difference가 있는 것으로 처리한 사전도 있었고(가, 까, 각, 깍, … 순. 예: 가오리 < 까마귀 < 각다귀), ㄱ과 ㄲ 사이에 primary difference가 있는 것으로 보고 ㄱ과 ㄲ을 완전히 따로 분리해서 배열한 사전도 있었다(가, 각, …, 깋, 까, 깍, … 순. 예: 가오리 < 각다귀 < 까마귀). 1989년 현행 맞춤법이 시행되면서 후자로 명확히 규정하였다.

유니코드의 한글 자모 순서는 대한민국 표준어 순서를 따르고 있다.

3.1.1. 옛한글 [편집]

표준어의 어문 규정에는 옛한글에 대한 정렬 순서는 없으나, 대한민국의 KS X 1026-1 규격(정보교환용 한글 처리지침)에 따르면 옛한글은 다음과 같이 정렬한다. 표준어의 정렬 순서를 확장한 것으로 볼 수 있다.
  • ㅿ은 ㅅ의 뒤에, ㆁ은 ㅇ의 뒤에, ㆆ은 ㅎ의 뒤에 따로 정렬하고, ㆍ(아래아)는 ㅣ의 뒤에 따로 정렬한다.
  • ㅲ, ㅼ, ㅵ과 같이 두세 낱자로 이루어진 병서는 A+B(+C)와 같이 보고 정렬한다. 예를 들어 ㅲ, ㅳ 등은 각각 ㅂ+ㄱ, ㅂ+ㄷ 등으로 보고 ㅂ과 ㅃ(= ㅂ+ㅂ) 사이에 정렬하고, ㅴ, ㅵ, ᄤ 등은 ㅄ과 ㅶ 사이에 정렬하고, ㅺ, ㅻ, ㅼ, ㅽ 등은 ㅅ과 ㅆ(= ㅅ+ㅅ) 사이에 정렬한다. 모음도 마찬가지로, ᅺ(= ㅓ+ㅗ), ᅻ(= ㅓ+ㅜ), ᅼ(= ㅓ+ㅡ) 등은 ㅓ와 ㅔ(= ㅓ+ㅣ) 사이에 정렬한다.
  • 연서(ᄛ, ㅱ, ㅸ, ㅹ, ㆄ)는 병서의 뒤에 따로 정렬한다. ㅷ ᄪ ꥴ ㅸ ㅹ ㅅ 순서이다.
  • 치두음(왼쪽으로 늘어진 낱자)과 정치음(오른쪽으로 늘어진 낱자)은 원 낱자(ㅅ, ㅈ, ㅊ)들의 뒤에 따로 정렬한다. 동일한 원 낱자 범위 안에서 치두음은 정치음보다 무조건 앞으로 정렬된다. 즉, 치두음쌍시옷(ᄽ)이 정치음시옷(ᄾ)보다 앞이다. ᄺ ᄻ ᄼ ᄽ ᄾ ᄿ ㅿ 순서이다.
  • 초성 채움 문자(U+115F)는 초성의 맨 뒤에 정렬되고, 중성 채움 문자(U+1160)는 중성의 맨 앞에 정렬된다. 초성과 중성은 모두 똑같고 종성의 유무만 다른 경우, 종성이 없는 글자는 종성이 있는 글자보다 앞에 온다.

구체적으로는 다음과 같이 정렬한다. 아래 이미지는 유니코드에 있는 모든 한글 낱자를 순서대로 정렬한 것이다. 자음의 경우 위의 것이 초성, 아래의 것이 종성이다.
파일:attachment/UnicodeHangulJamoInOrder.png

아래 표는 실제로 옛한글 정렬을 구현할 때 유용하게 쓰일 수 있을 것이다.
번호
초성
중성
종성
1
1100
1160
(없음)
2
1101
1161
11A8
3
115A
1176
11A9
4
1102
1177
11FA
5
1113
11A3
11C3
6
1114
1162
11FB
7
1115
1163
11AA
8
1116
1178
11C4
9
115B
1179
11FC
10
115C
11A4
11FD
11
115D
1164
11FE
12
1103
1165
11AB
13
1117
117A
11C5
14
1104
117B
11FF
15
115E
117C
11C6
16
A960
1166
D7CB
17
A961
1167
11C7
18
A962
11A5
11C8
19
A963
117D
11AC
20
1105
117E
D7CC
21
A964
1168
11C9
22
A965
1169
11AD
23
1118
116A
11AE
24
A966
116B
11CA
25
A967
11A6
D7CD
26
1119
11A7
D7CE
27
A968
117F
11CB
28
A969
1180
D7CF
29
A96A
D7B0
D7D0
30
A96B
1181
D7D1
31
A96C
1182
D7D2
32
A96D
D7B1
D7D3
33
A96E
1183
D7D4
34
111A
116C
11AF
35
111B
116D
11B0
36
1106
D7B2
D7D5
37
A96F
D7B3
11CC
38
A970
1184
D7D6
39
111C
1185
11CD
40
A971
D7B4
11CE
41
111D
1186
11CF
42
1107
1187
11D0
43
111E
1188
D7D7
44
111F
116E
11B1
45
1120
1189
11D1
46
1108
118A
11D2
47
1121
116F
D7D8
48
1122
118B
11B2
49
1123
1170
D7D9
50
1124
D7B5
11D3
51
1125
118C
D7DA
52
1126
118D
11D4
53
A972
1171
11D5
54
1127
D7B6
11B3
55
1128
1172
11D6
56
A973
118E
11D7
57
1129
D7B7
D7DB
58
112A
118F
11D8
59
A974
1190
11B4
60
112B
1191
11B5
61
112C
1192
11B6
62
1109
D7B8
11D9
63
112D
1193
D7DC
64
112E
1194
D7DD
65
112F
1173
11B7
66
1130
D7B9
11DA
67
1131
D7BA
D7DE
68
1132
D7BB
D7DF
69
1133
D7BC
11DB
70
110A
1195
D7E0
71
A975
1196
11DC
72
1134
1174
D7E1
73
1135
1197
11DD
74
1136
1175
11DE
75
1137
1198
11DF
76
1138
1199
D7E2
77
1139
D7BD
11E0
78
113A
D7BE
11E1
79
113B
D7BF
11E2
80
113C
D7C0
11B8
81
113D
119A
D7E3
82
113E
D7C1
11E3
83
113F
D7C2
D7E4
84
1140
119B
D7E5
85
110B
D7C3
D7E6
86
1141
119C
11B9
87
1142
D7C4
D7E7
88
A976
119D
D7E8
89
1143
119E
D7E9
90
1144
D7C5
11E4
91
1145
119F
11E5
92
1146
D7C6
11E6
93
1147
11A0
11BA
94
1148
11A1
11E7
95
1149
11A2
11E8
96
114A
11E9
97
114B
D7EA
98
A977
11EA
99
114C
D7EB
100
110C
11BB
101
114D
D7EC
102
110D
D7ED
103
A978
D7EE
104
114E
D7EF
105
114F
D7F0
106
1150
D7F1
107
1151
D7F2
108
110E
11EB
109
1152
D7F3
110
1153
D7F4
111
1154
11BC
112
1155
11F0
113
110F
11EC
114
1110
11ED
115
A979
D7F5
116
1111
11F1
117
1156
11F2
118
A97A
11EE
119
1157
11EF
120
1112
D7F6
121
A97B
11BD
122
1158
D7F7
123
1159
D7F8
124
A97C
D7F9
125
115F
11BE
126
11BF
127
11C0
128
11C1
129
11F3
130
D7FA
131
D7FB
132
11F4
133
11C2
134
11F5
135
11F6
136
11F7
137
11F8
138
11F9

3.2. 북한 문화어 [편집]

북한 문화어에서 사용되는 정렬 순서는 다음과 같다.
  • 초성: ㄱ ㄴ ㄷ ㄹ ㅁ ㅂ ㅅ ㅈ ㅊ ㅋ ㅌ ㅍ ㅎ ㄲ ㄸ ㅃ ㅆ ㅉ ㅇ
  • 중성: ㅏ ㅑ ㅓ ㅕ ㅗ ㅛ ㅜ ㅠ ㅡ ㅣ ㅐ ㅒ ㅔ ㅖ ㅚ ㅟ ㅢ ㅘ ㅝ ㅙ ㅞ
  • 종성: (없음) ㄱ ㄳ ㄴ ㄵ ㄶ ㄷ ㄹ ㄺ ㄻ ㄼ ㄽ ㄾ ㄿ ㅀ ㅁ ㅂ ㅄ ㅅ ㅇ ㅈ ㅊ ㅋ ㅌ ㅍ ㅎ ㄲ ㅆ
자음의 경우 쌍자음을 뒤에 배당하며, 모음의 경우 합성 자모를 뒤에 배당한다. 초성 ㅇ은 음가가 없기 때문에, 초성 ㅇ으로 시작하는 경우는 모음으로 시작한다고 보고 맨 뒤에 배당한다.

예를 들어, {개, 토끼, 하마, 오리, 기러기, 까마귀, 가오리}로 이루어진 단어 집합의 원소들을 남한식과 북한식으로 정렬하면 이렇게 된다.
  • 남: 가오리 < 개 < 기러기 < 까마귀 < 오리 < 토끼 < 하마
  • 북: 가오리 < 기러기 < 개 < 토끼 < 하마 < 까마귀 < 오리

이 순서는 다음과 같이 여러 그룹으로 나누면 쉽게 기억할 수 있다.
  • 초성: ㅇ을 제외한 홑자음(ㄱ ㄴ ㄷ ㄹ ㅁ ㅂ ㅅ ㅈ ㅊ ㅋ ㅌ ㅍ ㅎ), 쌍자음(ㄲ ㄸ ㅃ ㅆ ㅉ), ㅇ
  • 중성: 기본 모음(ㅏ ㅑ ㅓ ㅕ ㅗ ㅛ ㅜ ㅠ ㅡ ㅣ), ㅣ로 끝나는 digraph(ㅐ ㅒ ㅔ ㅖ ㅚ ㅟ ㅢ), 나머지 digraph(ㅘ ㅝ), trigraph(ㅙ ㅞ)
  • 종성: 쌍자음 둘(ㄲ ㅆ)만 맨 뒤로 뺌

참고로 유니코드에서는 북한식 정렬은 철저하게 외면당하고, 오로지 남한식 정렬만 채택되었다. 그래서 북한식 정렬을 컴퓨터에서 구현하려면 남한식 정렬을 구현할 때보다 추가적인 삽질이 필요하다. 남북한 한글 코드의 충돌 문제 문서도 참고할 것.

표준어식 정렬은 확장이 용이하기 때문에 옛한글도 쉽게 수용할 수 있지만, 문화어식 정렬은 확장이 까다로워서 옛한글을 수용하기 어렵다. 옛한글은 그 정확한 발음을 아무도 모르기 때문에 음가 기준이 아니라 표준어식 정렬 순서와 같이 자형 기준으로 하는 것이 바람직하다.

3.3. 겨레말큰사전 [편집]

남한과 북한이 공동으로 제작하는 한국어 사전 겨레말큰사전에서는 남한 표준어와 북한 문화어의 자모 순서를 절충해 다음과 같은 정렬 순서를 채택했다. 출처는 이 문서의 14쪽이다.
  • 초성: ㄱ ㄴ ㄷ ㄹ ㅁ ㅂ ㅅ ㅇ ㅈ ㅊ ㅋ ㅌ ㅍ ㅎ ㄲ ㄸ ㅃ ㅆ ㅉ
  • 중성: ㅏ ㅑ ㅓ ㅕ ㅗ ㅛ ㅜ ㅠ ㅡ ㅣ ㅐ ㅒ ㅔ ㅖ ㅘ ㅚ ㅙ ㅝ ㅟ ㅞ ㅢ
  • 종성: (없음) ㄱ ㄴ ㄷ ㄹ ㅁ ㅂ ㅅ ㅇ ㅈ ㅊ ㅋ ㅌ ㅍ ㅎ ㄲ ㄳ ㄵ ㄶ ㄺ ㄻ ㄼ ㄽ ㄾ ㄿ ㅀ ㅄ ㅆ

정리하자면 기본 자모들은 앞쪽에 따로 모으고 겹자모들은 뒤쪽에 따로 모은 것이다. ㅘ < ㅙ < ㅚ 순서가 아니라 ㅘ < ㅚ < ㅙ 순서가 된 것은 앞쪽의 ㅏ < ㅣ < ㅐ와 맞추기 위해서인 것으로 보인다. ㅝ < ㅟ < ㅞ도 마찬가지이다.

4. 라틴 문자 [편집]

기본적으로는 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 순을 따르고 모든 글자 사이에 primary difference가 있으나, 언어에 따라서 조금씩 차이가 있다. 아래에서 별도의 언급이 없는 한 기본적으로 이 정렬 순서를 따른다.

또한 같은 글자라도 언어에 따라 순서가 다를 수 있다. 예를 들어 독일어에서는 Ö < Z이지만 스웨덴어에서는 Z < Ö이고, 프랑스어에서는 É < È이지만 베트남어에서는 È < É이다.

언어별 확장 라틴 문자 목록 문서도 참고할 것.

4.1. 영어 (en) [편집]

영어도 일부 어휘에 diacritics가 쓰이는 경우가 있는데,[2] diacritic이 붙은 문자와 diacritic이 붙지 않은 문자 사이에는 secondary difference가 있다.
  • 예: echo < éclair < eclipse, resume < résumé

4.2. 독일어 (de) [편집]

두 가지 정렬 순서가 존재한다. 이 두 가지 정렬 순서는 움라우트가 붙은 글자(Ä, Ö, Ü)를 처리하는 방법이 다르다. ß는 두 가지 순서에서 모두 SS와 동일하게 취급한다.
  • 사전 순서
    Ä, Ö, Ü와 A, O, U 사이에는 secondary difference가 있다.
    • 예: Arg < Ärgerlich < Arm < Assistent < Aßlar < Assoziation
  • 전화번호부 순서
    Ä, Ö, Ü를 각각 AE, OE, UE와 동일하게 취급한다.
    • 예: Udet < Übelacker < Uell < Ülle < Ueve < Üxküll < Uffenbach

그래서 독일어 사전에서는 of < öf이지만, 전화번호부에서는 öf < of이다.

두 가지 정렬 순서가 있는 이유는 다음과 같다.
  • 사전 순서: 단어의 파생형을 비슷한 위치에 놓기 위해서이다. 예를 들어 Fuß의 복수형은 Füße인데, ü를 일단 u와 동일하게 보면 Fuß와 Füße가 가까운 위치에 놓이게 되므로 편리하다.
  • 전화번호부 순서: 인명에서는 ä, ö, ü가 쓰이는 경우도 있고 ae, oe, ue가 쓰이는 경우도 있다. 예를 들어 독일어권에는 Müller 씨도 Mueller 씨도 모두 존재하는데, ü를 일단 ue와 동일하게 보면 Müller와 Mueller가 기본적으로 같은 위치에 놓이게 되므로 편리하다.

4.3. 에스페란토 (eo) [편집]

Ĉ, Ĝ, Ĥ, Ĵ, Ŝ, Ŭ와 C, G, H, J, S, U 사이에는 primary difference가 있다(…, C, Ĉ, D, E, F, G, Ĝ, H, Ĥ, I, J, Ĵ, …, S, Ŝ, T, U, Ŭ, V, Z).

4.4. 스페인어 (es) [편집]

Á, É, Í, Ó, Ú, Ü와 A, E, I, O, U 사이에는 secondary difference가 있다.
  • 예: facial < fácil < facilidad, como < cómo
다만 Ñ와 N 사이에는 primary difference가 있다(따라서 N 뒤에 Ñ를 따로 정렬한다).
  • 예: anticipar < año < aorta

1997년까지는 CH와 LL을 별도의 문자로 보고 각각 C와 L 뒤에 따로 배열했지만, 현재는 별도의 문자로 보지 않고 각각 C + H, L + L로 본다.
  • 과거: centro < cielo < champú, limpiar < locación < llamar
  • 현재: centro < champú < cielo, limpiar < llamar < locación

4.5. 프랑스어 (fr) [편집]

diacritic이 붙은 문자와 diacritic이 붙지 않은 문자 사이에는 secondary difference가 있다. A, E, I, U와 같이 글자 위에 붙을 수 있는 diacritic의 종류가 둘 이상인 경우, acute (´) < grave (`) < circumflex (ˆ) < diaeresis (¨) 순으로 정렬된다. 정리하자면 다음과 같다(대괄호로 묶인 글자들은 secondary difference 관계임).
  • [A À Â] B [C Ç] D [E É È Ê Ë] F G H [I Î Ï] J K L M N [O Ô] P Q R S T [U Ù Û Ü] V W X [Y Ÿ] Z
Æ, Œ는 각각 AE, OE와 동일하게 취급한다.

primary difference가 없고 secondary difference만 있다면(= diacritic을 제거했을 때 똑같아진다면), 마지막 diacritic에 따라 정렬된다.
  • 예: cote < côte < coté < côté

4.6. 포르투갈어 (pt) [편집]

영어와 동일하다. diacritic이 쓰이는 경우가 있는데, diacritic이 붙은 문자와 diacritic이 붙지 않은 문자 사이에는 secondary difference가 있다.

4.7. 스웨덴어 (sv) [편집]

Å, Ä, Ö는 Z 뒤에 별도의 문자로 정렬된다(…, X, Y, Z, Å, Ä, Ö).

4.8. 터키어 (tr) [편집]

Ç, Ğ, İ(i), Ö, Ş, Ü와 C, G, I(ı), O, S, U 사이에는 primary difference가 있다. I(ı)와 İ(i)의 경우, I(ı) < İ(i)와 같이 점이 없는 것이 앞으로, 있는 것이 뒤로 간다.

4.9. 베트남어 (vi) [편집]

Ă, Â, Đ, Ê, Ô, Ơ, Ư와 A, D, E, O, U 사이에는 primary difference가 있다(A, Ă, Â, B, C, D, Đ, E, Ê, G, …, N, O, Ô, Ơ, P, …, T, U, Ư, V, X, Y).

성조 부호가 없는 문자와 성조 부호가 붙은 문자 사이에는 secondary difference가 있다. 성조 부호는 부호 없음 (a) < grave (à) < hook above (ả) < tilde (ã) < acute (á) < dot below (ạ) 순으로 정렬된다.

4.10. 한어병음 [편집]

보통 다음 두 가지 방식[3]으로 정렬된다. 代表(dàibiǎo), 单位(dānwèi), 单纯(dānchún), 大众(dàzhòng), 大家(dàjiā), 当时(dāngshí)라는 단어들을 예로 든다.
  • 첫 한자의 병음 표기 → 첫 한자 → 그 한자 안에서 두 번째 한자의 병음 표기 → 두 번째 한자 (세 글자 이상의 한자로 이루어진 단어라면 글자마다 같은 과정 반복)
    • da 大
      • …jia …家 → 大家
      • …zhong …众 → 大众
    • dai 代
      • …biao …表 → 代表
    • dan 单
      • …chun …纯 → 单纯
      • …wei …位 → 单位
    • dang 当
      • …shi …时 → 当时
  • 한자와 상관없이 모든 단어들을 병음 순서대로 나열함[4]
    • d → +a → +i → +b → +i → +a → +o → 代表
    • d → +a → +j → +i → +a → 大家
    • d → +a → +n → +c → +h → +u → +n → 单纯
    • d → +a → +n → +g → +s → +h → +i → 当时
    • d → +a → +n → +w → +e → +i → 单位
    • d → +a → +z → +h → +o → +n → +g → 大众
그래서 첫 번째 방식에서는 大家 < 大众 < 代表 < 单纯 < 单位 < 当时이고, 두 번째 방식에서는 代表 < 大家 < 单纯 < 当时 < 单位 < 大众이다. 쉽게 말해서 첫 번째 방식은 기본적으로 한자를 기준으로 하되 한자의 배열 순서가 병음 ABC순인 것이고, 두 번째 방식은 철저히 ABC가 기준이다.

첫 번째 방식은 특정 한자로 시작되는 단어들을 찾고자 할 때 편리하고(예를 들어 意를 보면 意로 시작하는 단어들이 그곳에 몰려 있으므로), 두 번째 방식은 발음은 알고 있으나 어떤 한자로 쓰는지 모르는 단어를 찾고자 할 때 아주 편리하다(예를 들어 yìshí(意识)라는 단어를 찾고자 할 때 단순히 y → +i → +s → +h → +i 식으로 찾아 나가면 되므로. 첫 번째 방식대로라면 yì에 해당되는 글자(꽤 많다)가 뭔지부터 궁리해야 한다).

성조 부호가 없는 문자와 성조 부호가 붙은 문자 사이에는 secondary difference가 있다. 성조 부호는 첫 번째 방식에서는 < macron (ā) < acute (á) < caron (ǎ) < grave (à) < 부호 없음 (a) 순으로, 두 번째 방식에서는 부호 없음 (a) < macron (ā) < acute (á) < caron (ǎ) < grave (à) 순으로 정렬된다.

5. 가나 [편집]

기본적으로 오십음도를 따라 あ い う え お か き く け こ さ し す せ そ た ち つ て と な に ぬ ね の は ひ ふ へ ほ ま み む め も や ゆ よ ら り る れ ろ わ ゐ ゑ を ん 순으로 정렬되며, 각 문자 사이에는 primary difference가 존재한다. 히라가나만을 예로 드나, 가타카나에도 똑같이 적용된다.
  • 탁점(゛)과 반탁점(゜)이 붙은 가나와 붙지 않은 가나 사이에는 secondary difference가 있다. primary difference가 없을 경우, 없음 < 탁점 < 반탁점 순서로 정렬한다.
  • 작은 가나와 보통 크기의 가나 사이에는 tertiary difference가 있다. primary difference와 secondary difference가 없을 경우, 작은 가나 < 보통 크기의 가나 순서로 정렬한다.
  • 장음 부호(ー)는 앞 글자가 あ단일 경우 あ로, い단일 경우 い로, う단일 경우 う로, え단일 경우 え로, お단일 경우 お로, ん일 경우 ん으로 바꿔 처리한다.
  • ゝ, 々는 바로 앞 글자로 바꿔 처리한다. 앞 글자도 ゝ나 々일 경우는 그 앞 글자로 바꿔 처리한다.
  • 한자의 경우 해당 한자의 일본어 독음을 따른다.

이와는 별개로, 일본어의 50음도를 사용해 만든 이로하 노래의 순서에 따라 배열하기도 한다. 이를 이로하 순서(いろは順)라고 하며, 실생활에서 오십음순 못지않게 많이 사용한다. 대표적으로 일본 법률의 조문의 이나 음 이름[5]이 있으며, 일본 해군과 해상자위대에서도 사용하였다. 사실 근대 이전까지만 해도 이로하 순서가 오십음순보다 훨씬 많이 쓰였다.

6. 키릴 문자 [편집]

기본적으로 А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я 순으로 정렬된다. 각 글자 사이에 primary difference가 있으나, 언어에 따라서 조금씩 차이가 있다. diacritic이 붙은 문자와 diacritic이 붙지 않은 문자 사이에는 secondary difference가 있다.

7. 그리스 문자 [편집]

기본적으로 Α Β Γ Δ Ε Ζ Η Θ Ι Κ Λ Μ Ν Ξ Ο Π Ρ Σ Τ Υ Φ Χ Ψ Ω 순으로 정렬된다. 각 글자 사이에 primary difference가 있으며, diacritic이 붙은 문자와 diacritic이 붙지 않은 문자 사이에는 secondary difference가 있다.

8. 주음부호 [편집]

ㄅ ㄆ ㄇ ㄈ ㄉ ㄊ ㄋ ㄌ ㄍ ㄎ ㄏ ㄐ ㄑ ㄒ ㄓ ㄔ ㄕ ㄖ ㄗ ㄘ ㄙ ㄧ ㄨ ㄩ ㄚ ㄛ ㄜ ㄝ ㄞ ㄟ ㄠ ㄡ ㄢ ㄣ ㄤ ㄥ ㄦ 순으로 정렬된다. 각 문자 사이에는 primary difference가 존재한다.

9. 한자 [편집]

9.1. 독음 순 정렬 [편집]

한국어, 일본어, 중국어, 베트남어 등은 자신만의 한자 독음을 가지고 있으며, 이러한 언어들은 그 독음에 따라 한자를 정렬하는 경우가 많다.

9.2. 부수-나머지 획수 순 정렬 [편집]

한자를 1차적으로 부수에 따라 정렬하며, 부수가 같은 한자는 부수를 제외한 나머지 부분의 획수 순으로 정렬한다. 부수강희자전의 214부수 체계를 따르는 것이 일반적이다. 각 부수 사이에는 primary difference가 존재한다.

이 정렬 방식은 한자의 독음을 알 수 없을 때(또는 한 한자에 여러 독음이 존재할 때) 유용하게 쓰일 수 있으며, 특정 언어의 독음에 의존하지 않아도 되기 때문에 중립적이기도 하다. 다만 부수와 획수가 같은 한자의 순서는 정해지지 않았다.

유니코드에서는 한자 블록을 제정할 때 한자들을 부수-나머지 획수 순으로 배당한다(一, 丁, 丂, …, 龣, 龤, 龥). 유니코드가 이 배열 순서를 채택한 것은 바람직하다고 할 수 있다. 왜냐하면 유니코드는 특정 언어만을 위한 문자 집합이 아니라 모든 언어를 위한 문자 집합이고, 옛 문헌에 나오는 독음을 알 수 없는 한자들도 비교적 쉽게 배열해 추가할 수 있다는 장점이 있기 때문이다.

10. 아랍 문자 [편집]

ا ﺏ ﺕ ﺙ ﺝ ح خ د ذ ر ز ﺱ ش ص ض ط ظ ع غ ف ق ك ل م ن ه و ي ڭ گ ﭪ ژ ﭺ پ 순으로 정렬된다. 각 문자 사이에는 primary difference가 존재한다.
단, 기본적으로 좌서 문자이기 때문에 맨 오른쪽의 글자를 기준으로 정렬된다.

11. 히브리 문자 [편집]

א בּ ב ג ד ה ו ז ח ט י כּ כ ך ל מ ם נ ן ס ע פּ פ ף צ ץ ק ר ש תּ ת 순으로 정렬된다. 각 문자 사이에는 primary difference가 존재한다.
단, 기본적으로 좌서 문자이기 때문에 맨 오른쪽의 글자를 기준으로 정렬된다.

12. 단순 유니코드 순 정렬 [편집]

단순히 유니코드 코드 값 순으로 정렬하는 것은 그 어떤 언어에도 적합하다고 할 수 없다.

라틴 문자의 경우 소문자 a(U+0061)가 대문자 Z(U+005A)보다 뒤에 오게 되며, Ñ(U+00D1)는 소문자 z(U+007A)보다도 뒤에 오게 된다.

한글의 경우 (U+3134) 같은 낱자나 'ᄒᆞᆫ'(U+1112 U+119E U+11AB)과 같이 조합형 낱자로 이루어진 옛한글이 언제나 완성형 한글 글자 마디 '가'(U+AC00)보다 앞에 오게 된다.

한자의 경우, 위에서도 언급했듯 유니코드에는 강희자전 부수 순으로 정렬되어 있으며, 특정 언어의 독음 순으로 배당돼 있지 않다. 일본어에서 주로 쓰이는 々, ゝ, 장음 부호(ー) 등은 여러 영역에 흩어져 있다.

그래서 일본어 정렬 시 별도의 처리를 하지 않고 단순 유니코드 순으로 정렬하면 々 < 히라가나 < ゝ < 가타카나 < 장음 부호(ー) < 한자(강희자전 순)와 같은 순서로 정렬된다. 회원 가입 시 히라가나를 따로 받는 것도 이것 때문이며, 이런 꼼수를 쓰지 않는 경우 인명 정렬 시 あ가 아닌 (한 일)로 시작하는 이름이 맨 앞에 온다. 즉 가나 순으로는 비교적 뒷자리인 히토츠이 하지메(一一 一)가 강희자전 순으로 가장 앞에 온다는 말(…).

즉 어떤 언어든 올바른 정렬을 위해서는 별도의 처리가 필요하며, 코드 값에만 의존해서는 올바른 정렬이 불가능하다.
[1] 굳이 한글에 한정시키지 않는다면 일단 한국에서는 숫자->특수문자->한글->영어 순으로 정렬하는 게 기본이다.[2] 주로 근래에 들어온 프랑스어독일어 등의 외래어에 쓰는 경우가 많다. 그렇지만 영어 고유어나 오래 전에 유입돼 영어로 완전히 흡수된 외래어 중에서도 diacritics를 덧붙이는 경우가 드물긴 해도 없지는 않다. 예를 들면 음절의 명확한 구분을 위해 ¨를 덧붙이는 경우가 간혹 있다. cooperation을 coöperation으로 쓰는 경우가 한 예인데, 이건 이 단어의 oo 부분이 하나의 모음을 나타내는 게 아니라 co-operation 식으로 나뉜다는 것을 강조하기 위해 o 위에 ¨를 덧붙인 것이다(참고로 이와 유사한 용법이 스페인어 등에서 쓰이고 있다). 또 다른 예로는 시어(詩語) 등에서 -ed를 -èd로 쓰는 경우가 있다. loved를 lovèd로 쓴다든가 blessed('블레스트'가 아니라 '블레시드'로 읽을 때로 한정)를 blessèd로 쓴다든가 등등. 물론 이런 용법은 근래에 거의 안 쓰는 추세이다.[3] 당연하겠지만 이 방식은 주음부호에서도 적용할 수 있다.[4] 이 방식은 미국의 중국학자 Victor H. Mair가 1986년에 제안한 방식이며, 이 방식을 채택한 사전 ABC Chinese–English Dictionary는 또 다른 미국의 중국학자 John DeFrancis의 주도로 1996년에 처음 나왔다. Mair도 DeFrancis도 현대 중국어가 다음절 언어라는 점을 강조한 바 있으며, 그에 따라 한자와 상관없이 모든 단어들이 병음 순서대로 나열된 사전이 필요하다고 보았다.[5] 다장조는 하장조(ハ長調), 라단조는 니단조(ニ短調)가 된다. 즉 도레미파솔라시도=다라마바사가나다=하니호헤토이로하.

라이선스를 별도로 명시하지 않은 문서는 CC BY-NC-SA 2.0 KR에 따라 이용할 수 있습니다.
기여하신 문서의 저작권은 각 기여자에게 있으며, 각 기여자는 기여하신 부분의 저작권을 갖습니다.

문서의 기여자는 역사 탭에서 확인할 수 있습니다.
접두어의 N: - 나무위키 사용자, R: - 리그베다 위키의 사용자를 뜻합니다.
자세한 사항은 나무위키에서 동일한 문서의 역사를 참고하시기 바랍니다.