[4] [DFN[[CODE[[[toNFKC_Casefold([VAR[X]])]]]]]] は、[[大文字]]と[[小文字]]を区別しない[[識別子]]の[[一致]]に使われることを想定した [SRC[>>1]] [[case folding]] です。これを用いた[[比較]]を[DFN[[RUBYB[[[識別子無case一致]]]@en[identifier caseless matching]]]]といいます。 * 仕様書 [REFS[ - [1] - [6] ]REFS] * 定義 [2] [[文字列]]に対する演算 [DFN[[CODE@en[[[toNFKC_Casefold([VAR[X]])]]]]]] は、各[[文字]]を [CODE@en[[[NFKC_Casefold]]]] の値に変換してから [[NFC]] を適用するものです [SRC[>>1]]。 ;; [8] 結果が変わらなくなるまで繰り返し適用する必要があるようです。 [3] [[文字]]の [DFN[[CODE@en[[[NFKC_Casefold]]]]]] (略称 [DFN[[CODE[[[NFKC_CF]]]]]]) は [[Unicode Character Database]] の [[DerivedNormalizationProps.txt]] に含まれています [SRC[>>1]]。 [7] [DFN[[RUBYB[[[識別子無case一致]]]@en[identifier caseless matching]]]]とは、2つの[[文字列]]の[[比較]]演算であり、 両者の [CODE@en[[[toNFKC_Casefold([VAR[X]])]]]] の結果が等しいことをいいます [SRC[>>6]]。 * メモ [5] これは[[既定Case Folding]] をベースに、 [[NFKC]] で等しいものが等しいと判断されるようになっており、 また [CODE[[[Default_Ignorable_Code_Point]]]] が真の[[文字]]は無視されるようになっています [SRC[>>1]]。