Unicode には AZ以外の小文字に相当する文字があることをどこかで読みました。これらはどれでしょうか? また、他の文字に大文字と小文字が必要なのはなぜですか?
5 に答える
英語、そしてその変種であるアメリカ英語でさえ :-) 地球上で唯一の言語ではありません。非常に奇妙に見えるものもいくつかありますが(少なくともラテン語ベースの文字に慣れている人にとっては)、ラテン語ベースのものでさえマイナーなバリエーションがあります。
私が偶然以上に知っているのは、ギリシャ語とドイツ語の 2 つです。
Αα Ββ Γγ Δδ Εε Ζζ Ηη Θθ Ιι Κκ Λλ Μμ
Νν Ξξ Οο Ππ Ρρ Σσς Ττ Υυ Φφ Χχ Ψψ Ωω
Aa Ää Bb Cc Dd Ee Ff Gg Hh Ii Jj Kk Ll Mm Nn
Oo Öö Pp Qq Rr Ss ß Tt Uu Üü Vv Ww Xx Yy Zz
そのため、次のようなコードの使用は許可されていません。
char lower = upper - 'A' + 'a';
もう。i18nを真剣に考えている会社でそのようなことをすることは、解雇の理由に近い. Unicode 対応のtoLower()/toUpper()
タイプの関数を使用するのがより良い方法です。
私たちのほとんどがここで見慣れている通常のラテン語由来の西ヨーロッパのアルファベット以外にも、たくさんのアルファベットがあります。まず、Àà、IJij などのアクセント付き文字と合字の大文字と小文字のバージョンが必要です。また、アジア言語でドキュメントを設定するときに使用されるラテン文字の全角バージョンもあります (調べるのが面倒です)。さらに、キリル文字 (Бб) やギリシャ文字 (Δδ) など、他のアルファベットも現在使用されています。
ジェフ・アトウッドによると、トルコもちょっと難しいです。環境によって提供される大文字/小文字関数を使用することは、(通常) ユーザー入力データを処理する方法です。
大文字の ß は、名前や単語の最初の文字として使用されることはないため、ドイツ語では必要ありません。残りの部分については、一部の言語 (フランス語?) では、大文字のアクセント付き文字は使用されず、アクセントなしのバリアントのみが使用されます。
アクセントのある文字は、潜在的に異なるコード ポイントを持つか、複数のコード ポイントの組み合わせである可能性があります。たとえば、ÂËÕÝ は大文字と小文字に相当します。
重要なのは、ユーザーのロケール設定に関して標準を忠実に実装するか、toupper()/tolower() の一般的なケースを正しく処理するシステム ライブラリを使用して同じ効果を得ることです。