メインコンテンツ

textanalytics.unicode.nfkc

R2026b

Unicode compatibility composed normalized form (NFKC)

R2022b 以降

    説明

    newStr = textanalytics.unicode.nfkc(str) は、文字列 str を Unicode compatibility composed normalized form (NFKC) に正規化します。

    例

    例

    すべて折りたたむ

    見た目が同じ文字列でも、基となる表現が異なる場合があります。Unicode compatibility canonical composition form (NFKC) は、同等の文字列が必ず一意のバイナリ表現で表されるようにします。

    文字列 "efficient" を考えてみましょう。ここで文字 "ffi" はコード ユニット "\xFB03" で表されます。文字列の長さは 7 です。

    str = compose("e\xFB03") + "cient"
    str = 
    "efficient"
    
    strlength(str)
    ans = 
    7
    

    textanalytics.unicode.nfkc 関数を使用して文字列を正規化します。

    newStr = textanalytics.unicode.nfkc(str)
    newStr = 
    "efficient"
    

    正規化された文字列の長さを表示します。正規化された表現には、2 つのコード ユニットが追加されています。この場合、この関数は "ffi" という文字を "ffi" という文字列に置き換えます。

    strlength(newStr)
    ans = 
    9
    

    正規化された文字列の 2 番目から 4 番目のコード ユニットを抽出します。

    extractBetween(newStr,2,4)
    ans = 
    "ffi"
    

    == 演算子を使用して、文字列 str および newStr が等しいかどうかを確認します。文字列の基となる表現が異なるため、この演算子は 0 を返します。

    tf = str == newStr
    tf = logical
       0
    
    

    入力引数

    すべて折りたたむ

    入力テキスト。string 配列、文字ベクトル、または文字ベクトルの cell 配列として指定します。

    例: ["An example of a short sentence."; "A second short sentence."]

    データ型: string | char | cell

    出力引数

    すべて折りたたむ

    出力テキスト。string 配列、文字ベクトル、または文字ベクトルの cell 配列として返されます。str と newStr は同じデータ型です。

    アルゴリズム

    すべて折りたたむ

    参照

    [1] Whistler, Ken, ed. "Unicode Standard Annex #15: Unicode Normalization Forms." Unicode Technical Reports, August 27, 2021. https://unicode.org/reports/tr15/.

    バージョン履歴

    R2022b で導入