[3] [[大文字]]と[[小文字]]を区別しない ([DFN[case‐insensitive]]) な[[比較]]は、 [[ASCII]] だけを対象としている間はおおよそ自明に定まりますが、[[ASCII]] より大きな[[文字集合]]を扱う場合には様々な可能性があり、処理も複雑化します。 * 大文字と小文字を区別しない比較方法のいろいろ [4] '''[[ASCII大文字・小文字不区別]]'''は、[[文字集合]]が [[Unicode]] であったとしても、 [[大文字]]と[[小文字]]の同一視を行う対象は [[ASCII]] [[文字]]だけに限定するもので、 実装も簡潔かつ高速です。[[HTML]] の構文など[[ラテン文字]]と少数の[[記号]]のみで記述される場面で有用で、 よく用いられています。 [5] '''[[互換性大文字・小文字不区別]]'''は、[[大文字]]と[[小文字]]の区別のある膨大な [[Unicode]] の[[文字]]について、[[大文字]]と[[小文字]]の区別を行わないものです。 [6] '''[[IRCにおける大文字と小文字]]''': [[IRC]] は、[[欧州]]で [[ISO/IEC 646の版]]のもとで開発された歴史的経緯ゆえ、 純粋に[[文字]]についてではなく、 ([[ASCII]] では[[記号]]となっているものも含めた) 特定の[[符号位置]]について[[大文字]]と[[小文字]]の関係が定義されています。 * 大文字・小文字不区別文字列比較算法 [7] [[HFS Plus]] の[[ファイル名]]では[DFN[[RUBYB[[[大文字・小文字不区別文字列比較算法]]]@en[Case-Insensitive String Comparison Algorithm]]]] ([DFN[[[FastUnicodeCompare]]]]) が使用されています。 ** 仕様書 [REFS[ - [10] [CITE[Technical Note TN1150: HFS Plus Volume Format]] ([TIME[2014-03-30 10:39:00 +09:00]] 版) -- [8] [DEL[[CITE[Technical Note TN1150: HFS Plus Volume Format]] ]] ]REFS] ** Unicode の版 [9] [[大文字]]・[[小文字]]の表は >>8 で配布されています。 [[Unicode]] の版は明記されておらず、 [[Unicode]] の拡張に合わせて更新されている形跡は見当たりません。 * 古い HTML 5 の定義 [1] [[Web Forms 2.0]] で[[比較]]に[DFN[[RUBYB[[[大文字]]・[[小文字]]を区別しない]@en[case‐insensitive]]]]とき、 [[比較]]の際には [[Unicode]] で規定された [[case folding]] を実行'''[[しなければなりません]]'''。 ;; [2] この定義は後に改められ、現在の [[HTML]] では[[ASCII大文字・小文字不区別]]または[[互換性大文字・小文字不区別]]を使っています。 * メモ