...

パッケージ unicode

概要 ▾

unicode パッケージは,Unicode コードポイントの特徴を検査するためのデータと関数を提供します。

例 (Is)

"Is" で始まる関数は,ルーンがどの範囲の表に属しているかを調べるために使用できます。 ルーン文字は複数の範囲に収まる可能性があることに注意してください。

コード:

// 混合型ルーンでは定数
const mixed = "\b5Ὂg̀9! ℃ᾭG"
for _, c := range mixed {
    fmt.Printf("For %q:\n", c)
    if unicode.IsControl(c) {
        fmt.Println("\tis control rune")
    }
    if unicode.IsDigit(c) {
        fmt.Println("\tis digit rune")
    }
    if unicode.IsGraphic(c) {
        fmt.Println("\tis graphic rune")
    }
    if unicode.IsLetter(c) {
        fmt.Println("\tis letter rune")
    }
    if unicode.IsLower(c) {
        fmt.Println("\tis lower case rune")
    }
    if unicode.IsMark(c) {
        fmt.Println("\tis mark rune")
    }
    if unicode.IsNumber(c) {
        fmt.Println("\tis number rune")
    }
    if unicode.IsPrint(c) {
        fmt.Println("\tis printable rune")
    }
    if !unicode.IsPrint(c) {
        fmt.Println("\tis not printable rune")
    }
    if unicode.IsPunct(c) {
        fmt.Println("\tis punct rune")
    }
    if unicode.IsSpace(c) {
        fmt.Println("\tis space rune")
    }
    if unicode.IsSymbol(c) {
        fmt.Println("\tis symbol rune")
    }
    if unicode.IsTitle(c) {
        fmt.Println("\tis title case rune")
    }
    if unicode.IsUpper(c) {
        fmt.Println("\tis upper case rune")
    }
}

出力:

For '\b':
	is control rune
	is not printable rune
For '5':
	is digit rune
	is graphic rune
	is number rune
	is printable rune
For 'Ὂ':
	is graphic rune
	is letter rune
	is printable rune
	is upper case rune
For 'g':
	is graphic rune
	is letter rune
	is lower case rune
	is printable rune
For '̀':
	is graphic rune
	is mark rune
	is printable rune
For '9':
	is digit rune
	is graphic rune
	is number rune
	is printable rune
For '!':
	is graphic rune
	is printable rune
	is punct rune
For ' ':
	is graphic rune
	is printable rune
	is space rune
For '℃':
	is graphic rune
	is printable rune
	is symbol rune
For 'ᾭ':
	is graphic rune
	is letter rune
	is printable rune
	is title case rune
For 'G':
	is graphic rune
	is letter rune
	is printable rune
	is upper case rune

定数

const (
    MaxRune         = '\U0010FFFF' // 最大有効 Unicode コードポイント。
    ReplacementChar = '\uFFFD'     // 無効なコードポイントを表します。
    MaxASCII        = '\u007F'     // 最大 ASCII 値
    MaxLatin1       = '\u00FF'     // Latin-1 の最大値
)

ケースマッピングのために CaseRanges 内の Delta 配列にインデックスを付けます。

const (
    UpperCase = iota
    LowerCase
    TitleCase
    MaxCase
)

CaseRange の Delta フィールドが UpperLower の場合は,この CaseRange が (たとえば)UpperLowerUpperLower という形式のシーケンスを表すことを意味します。

const (
    UpperLower = MaxRune + 1 // (有効なデルタにはできません。)
)

Version は,テーブルの派生元の Unicode 版です。

const Version = "11.0.0"

変数

これらの変数は *RangeTable 型です。

var (
    Cc     = _Cc // Cc は,カテゴリ Cc (Other, control) の Unicode 文字のセットです。
    Cf     = _Cf // Cf は,カテゴリ Cf (その他,フォーマット) の Unicode 文字の集合です。
    Co     = _Co // Co は,カテゴリ Co (その他,私用) の Unicode 文字のセットです。
    Cs     = _Cs // Cs は,カテゴリ Cs (その他,サロゲート) の Unicode 文字の集合です。
    Digit  = _Nd // Digit は, "十進数字" プロパティを持つ Unicode 文字のセットです。
    Nd     = _Nd // Nd は,カテゴリ Nd (数字, 十進数字) の Unicode 文字のセットです。
    Letter = _L  // Letter/L は,カテゴリー L の Unicode 文字のセットです。
    L      = _L
    Lm     = _Lm // Lm は,カテゴリ Lm 内の Unicode 文字の集合です (文字,修飾子) 。
    Lo     = _Lo // Lo は, Lo カテゴリの Unicode 文字の集合です (Letter, other) 。
    Lower  = _Ll // Lower は Unicode の小文字のセットです。
    Ll     = _Ll // Ll は,カテゴリー Ll (Letter ,小文字) の Unicode 文字のセットです。
    Mark   = _M  // Mark/M は,カテゴリ M の Unicode マーク文字のセットです。
    M      = _M
    Mc     = _Mc // Mc は,カテゴリ Mc (マーク,スペース結合) の Unicode 文字のセットです。
    Me     = _Me // Me は,カテゴリ Me (マーク ,囲み) の Unicode 文字のセットです。
    Mn     = _Mn // Mn は,カテゴリ Mn (マーク,非スペース) の Unicode 文字のセットです。
    Nl     = _Nl // Nl は,カテゴリ Nl (数字, レター) の Unicode 文字の集合です。
    No     = _No // No は,カテゴリ No (数字, その他) の Unicode 文字のセットです。
    Number = _N  // Number/N は, Unicode の数字文字,カテゴリ N のセットです。
    N      = _N
    Other  = _C // Other/C は, Unicode の制御文字と特殊文字,カテゴリー C です。
    C      = _C
    Pc     = _Pc // Pc は,カテゴリ Pc (句読点,コネクタ) の Unicode 文字のセットです。
    Pd     = _Pd // Pd は,カテゴリ Pd (句読点,ダッシュ) の Unicode 文字のセットです。
    Pe     = _Pe // Pe は,カテゴリ Pe (句読点,クローズ) の Unicode 文字のセットです。
    Pf     = _Pf // Pf は,カテゴリ Pf (句読点,最終引用符) 内の Unicode 文字のセットです。
    Pi     = _Pi // Pi は,カテゴリ Pi (句読点,最初の引用符) の Unicode 文字のセットです。
    Po     = _Po // Po は,カテゴリ Po (句読点,その他) の Unicode 文字のセットです。
    Ps     = _Ps // Ps は,カテゴリ Ps (句読点,オープン) の Unicode 文字の集合です。
    Punct  = _P  // Punct/P は,カテゴリ P の Unicode 句読文字のセットです。
    P      = _P
    Sc     = _Sc // Sc は,カテゴリ Sc (シンボル,通貨) の Unicode 文字のセットです。
    Sk     = _Sk // Sk は,カテゴリ Sk (シンボル,修飾子) の Unicode 文字のセットです。
    Sm     = _Sm // Sm は,カテゴリ Sm (シンボル,数学) の Unicode 文字のセットです。
    So     = _So // So (シンボル, その他) の Unicode 文字セットもそうです。
    Space  = _Z  // Space/Z は, Unicode の空白文字,カテゴリ Z のセットです。
    Z      = _Z
    Symbol = _S // Symbol/S は,カテゴリ S の Unicode 記号文字のセットです。
    S      = _S
    Title  = _Lt // Title は, Unicode のタイトルの大文字と小文字の組み合わせです。
    Lt     = _Lt // Lt は,カテゴリ Lt 内の Unicode 文字のセットです (レター,タイトルケース) 。
    Upper  = _Lu // Upper は Unicode の大文字の集合です。
    Lu     = _Lu // Lu は,カテゴリ Lu (文字,大文字) の Unicode 文字のセットです。
    Zl     = _Zl // Zl は,カテゴリ Zl (セパレータ,行) の Unicode 文字のセットです。
    Zp     = _Zp // Zp は,カテゴリ Zp (セパレータ,段落) の Unicode 文字のセットです。
    Zs     = _Zs // Zs は,カテゴリ Zs (セパレータ, スペース) の Unicode 文字のセットです。
)

これらの変数は *RangeTable 型です。

var (
    Adlam                  = _Adlam                  // Adlam はスクリプト Adlam の Unicode 文字のセットです。
    Ahom                   = _Ahom                   // Ahom は,スクリプト Ahom の Unicode 文字のセットです。
    Anatolian_Hieroglyphs  = _Anatolian_Hieroglyphs  // Anatolian_Hieroglyphs は,スクリプト Anatolian_Hieroglyphs 内の Unicode 文字のセットです。
    Arabic                 = _Arabic                 // Arabic は,スクリプトアラビア語の Unicode 文字のセットです。
    Armenian               = _Armenian               // Armenian は,スクリプトアルメニア語の Unicode 文字のセットです。
    Avestan                = _Avestan                // Avestan は,スクリプト Avestan の Unicode 文字のセットです。
    Balinese               = _Balinese               // Balinese は,スクリプト Balinese の Unicode 文字のセットです。
    Bamum                  = _Bamum                  // Bamum はスクリプト Bamum の Unicode 文字のセットです。
    Bassa_Vah              = _Bassa_Vah              // Bassa_Vah は,スクリプト Bassa_Vah の Unicode 文字のセットです。
    Batak                  = _Batak                  // Batak は,スクリプト Batak 内の Unicode 文字のセットです。
    Bengali                = _Bengali                // Bengali は,スクリプト Bengali の Unicode 文字のセットです。
    Bhaiksuki              = _Bhaiksuki              // Bhaiksuki は,スクリプト Bhaiksuki 内の Unicode 文字のセットです。
    Bopomofo               = _Bopomofo               // Bopomofo は,スクリプト Bopomofo 内の Unicode 文字のセットです。
    Brahmi                 = _Brahmi                 // Brahmi は,スクリプト Brahmi の Unicode 文字のセットです。
    Braille                = _Braille                // Braille は,スクリプト点字の Unicode 文字のセットです。
    Buginese               = _Buginese               // Buginese は,スクリプト Buginese の Unicode 文字のセットです。
    Buhid                  = _Buhid                  // Buhid は,スクリプト Buhid 内の Unicode 文字のセットです。
    Canadian_Aboriginal    = _Canadian_Aboriginal    // Canadian_Aboriginal は,スクリプト Canadian_Aboriginal の Unicode 文字のセットです。
    Carian                 = _Carian                 // Carian は,スクリプト Carian の Unicode 文字のセットです。
    Caucasian_Albanian     = _Caucasian_Albanian     // Caucasian_Albanian は,スクリプト Caucasian_Albanian 内の Unicode 文字のセットです。
    Chakma                 = _Chakma                 // Chakma は,スクリプト Chakma 内の Unicode 文字のセットです。
    Cham                   = _Cham                   // Cham は,スクリプト Cham 内の Unicode 文字のセットです。
    Cherokee               = _Cherokee               // Cherokee は,スクリプト Cherokee 内の Unicode 文字のセットです。
    Common                 = _Common                 // Common は,スクリプト Common の Unicode 文字のセットです。
    Coptic                 = _Coptic                 // Coptic は,スクリプト Coptic の Unicode 文字のセットです。
    Cuneiform              = _Cuneiform              // Cuneiform は,スクリプト Cuneiform の Unicode 文字のセットです。
    Cypriot                = _Cypriot                // Cypriot は,スクリプト Cypriot の Unicode 文字のセットです。
    Cyrillic               = _Cyrillic               // Cyrillic は,キリル文字スクリプトの Unicode 文字のセットです。
    Deseret                = _Deseret                // Deseret は,スクリプト Deseret の Unicode 文字のセットです。
    Devanagari             = _Devanagari             // Devanagari は,スクリプト Devanagari の Unicode 文字のセットです。
    Dogra                  = _Dogra                  // Dogra は,スクリプト Dogra の Unicode 文字のセットです。
    Duployan               = _Duployan               // Duployan は,スクリプト Duployan の Unicode 文字のセットです。
    Egyptian_Hieroglyphs   = _Egyptian_Hieroglyphs   // Egyptian_Hieroglyphs は,スクリプト Egyptian_Hieroglyphs 内の Unicode 文字のセットです。
    Elbasan                = _Elbasan                // Elbasan は,スクリプト Elbasan の Unicode 文字のセットです。
    Ethiopic               = _Ethiopic               // Ethiopic は,スクリプト Ethiopic の Unicode 文字のセットです。
    Georgian               = _Georgian               // Georgian は, Georgian スクリプトの Unicode 文字のセットです。
    Glagolitic             = _Glagolitic             // Glagolitic は,スクリプト Glagolitic の Unicode 文字のセットです。
    Gothic                 = _Gothic                 // Gothic は,スクリプトゴシックの Unicode 文字のセットです。
    Grantha                = _Grantha                // Grantha は, Grantha スクリプトの Unicode 文字のセットです。
    Greek                  = _Greek                  // Greek は,スクリプトギリシャ語の Unicode 文字のセットです。
    Gujarati               = _Gujarati               // Gujarati は,グジャラート語スクリプトの Unicode 文字のセットです。
    Gunjala_Gondi          = _Gunjala_Gondi          // Gunjala_Gondi は,スクリプト Gunjala_Gondi の Unicode 文字のセットです。
    Gurmukhi               = _Gurmukhi               // Gurmukhi は,スクリプト Gurmukhi 内の Unicode 文字のセットです。
    Han                    = _Han                    // Han は,スクリプト Han の Unicode 文字のセットです。
    Hangul                 = _Hangul                 // Hangul は,スクリプトハングルの Unicode 文字のセットです。
    Hanifi_Rohingya        = _Hanifi_Rohingya        // Hanifi_Rohingya は,スクリプト Hanifi_Rohingya の Unicode 文字のセットです。
    Hanunoo                = _Hanunoo                // Hanunoo は,スクリプト Hanunoo の Unicode 文字のセットです。
    Hatran                 = _Hatran                 // Hatran は,スクリプト Hatran の中の Unicode 文字のセットです。
    Hebrew                 = _Hebrew                 // Hebrew は,スクリプトヘブライ語の Unicode 文字のセットです。
    Hiragana               = _Hiragana               // Hiragana は,スクリプトひらがなの Unicode 文字のセットです。
    Imperial_Aramaic       = _Imperial_Aramaic       // Imperial_Aramaic は,スクリプト Imperial_Aramaic の Unicode 文字のセットです。
    Inherited              = _Inherited              // Inherited は,スクリプト Inherited の Unicode 文字のセットです。
    Inscriptional_Pahlavi  = _Inscriptional_Pahlavi  // Inscriptional_Pahlavi は,スクリプト Inscriptional_Pahlavi 内の Unicode 文字のセットです。
    Inscriptional_Parthian = _Inscriptional_Parthian // Inscriptional_Parthian は,スクリプト Inscriptional_Parthian 内の Unicode 文字のセットです。
    Javanese               = _Javanese               // Javanese は,スクリプト Javanese の Unicode 文字のセットです。
    Kaithi                 = _Kaithi                 // Kaithi は,スクリプト Kaithi の Unicode 文字のセットです。
    Kannada                = _Kannada                // Kannada は,スクリプトカンナダ語の Unicode 文字のセットです。
    Katakana               = _Katakana               // Katakana は,スクリプトカタカナの Unicode 文字のセットです。
    Kayah_Li               = _Kayah_Li               // Kayah_Li は,スクリプト Kayah_Li 内の Unicode 文字のセットです。
    Kharoshthi             = _Kharoshthi             // Kharoshthi は,スクリプト Kharoshthi 内の Unicode 文字のセットです。
    Khmer                  = _Khmer                  // Khmer は,スクリプトクメール語の Unicode 文字のセットです。
    Khojki                 = _Khojki                 // Khojki はスクリプト Khojki の Unicode 文字のセットです。
    Khudawadi              = _Khudawadi              // Khudawadi は,スクリプト Khudawadi の Unicode 文字のセットです。
    Lao                    = _Lao                    // Lao は,スクリプトラオス語の Unicode 文字のセットです。
    Latin                  = _Latin                  // Latin は,スクリプト Latin の Unicode 文字のセットです。
    Lepcha                 = _Lepcha                 // Lepcha は,スクリプト Lepcha 内の Unicode 文字のセットです。
    Limbu                  = _Limbu                  // Limbu は,スクリプト Limbu 内の Unicode 文字のセットです。
    Linear_A               = _Linear_A               // Linear_A は,スクリプト Linear_A 内の Unicode 文字のセットです。
    Linear_B               = _Linear_B               // Linear_B は,スクリプト Linear_B 内の Unicode 文字のセットです。
    Lisu                   = _Lisu                   // Lisu は,スクリプト Lisu の Unicode 文字のセットです。
    Lycian                 = _Lycian                 // Lycian は,スクリプト Lycian の Unicode 文字のセットです。
    Lydian                 = _Lydian                 // Lydian は,スクリプト Lydian の Unicode 文字のセットです。
    Mahajani               = _Mahajani               // Mahajani は,スクリプト Mahajani の Unicode 文字のセットです。
    Makasar                = _Makasar                // Makasar は,スクリプト Makasar の Unicode 文字のセットです。
    Malayalam              = _Malayalam              // マラヤーラム語は,スクリプトマラヤーラム語の Unicode 文字のセットです。
    Mandaic                = _Mandaic                // Mandaic は,スクリプト Mandaic の Unicode 文字のセットです。
    Manichaean             = _Manichaean             // Manichaean は,スクリプト Manichaean 内の Unicode 文字のセットです。
    Marchen                = _Marchen                // Marchen は,スクリプト Marchen の Unicode 文字のセットです。
    Masaram_Gondi          = _Masaram_Gondi          // Masaram_Gondi は,スクリプト Masaram_Gondi 内の Unicode 文字のセットです。
    Medefaidrin            = _Medefaidrin            // Medefaidrin は,スクリプト Medefaidrin の Unicode 文字のセットです。
    Meetei_Mayek           = _Meetei_Mayek           // Meetei_Mayek は,スクリプト Meetei_Mayek の Unicode 文字のセットです。
    Mende_Kikakui          = _Mende_Kikakui          // Mende_Kikakui は,スクリプト Mende_Kikakui 内の Unicode 文字のセットです。
    Meroitic_Cursive       = _Meroitic_Cursive       // Meroitic_Cursive は,スクリプト Meroitic_Cursive 内の Unicode 文字のセットです。
    Meroitic_Hieroglyphs   = _Meroitic_Hieroglyphs   // Meroitic_Hieroglyphs は,スクリプト Meroitic_Hieroglyphs 内の Unicode 文字のセットです。
    Miao                   = _Miao                   // Miao は,スクリプト Miao 内の Unicode 文字のセットです。
    Modi                   = _Modi                   // Modi は,スクリプト Modi の Unicode 文字のセットです。
    Mongolian              = _Mongolian              // Mongolian は,スクリプトモンゴル語の​​ Unicode 文字のセットです。
    Mro                    = _Mro                    // Mro はスクリプト Mro の Unicode 文字のセットです。
    Multani                = _Multani                // Multani は,スクリプト Multani の Unicode 文字のセットです。
    Myanmar                = _Myanmar                // Myanmar は,スクリプトミャンマーの Unicode 文字のセットです。
    Nabataean              = _Nabataean              // Nabataean は,スクリプト Nabataean 内の Unicode 文字のセットです。
    New_Tai_Lue            = _New_Tai_Lue            // New_Tai_Lue は,スクリプト New_Tai_Lue 内の Unicode 文字のセットです。
    Newa                   = _Newa                   // Newa は,スクリプト Newa 内の Unicode 文字のセットです。
    Nko                    = _Nko                    // Nko は,スクリプト Nko の Unicode 文字のセットです。
    Nushu                  = _Nushu                  // Nushu は,スクリプト Nushu の Unicode 文字のセットです。
    Ogham                  = _Ogham                  // Ogham は,スクリプト Ogham の Unicode 文字のセットです。
    Ol_Chiki               = _Ol_Chiki               // Ol_Chiki は,スクリプト Ol_Chiki の Unicode 文字のセットです。
    Old_Hungarian          = _Old_Hungarian          // Old_Hungarian は,スクリプト Old_Hungarian の Unicode 文字のセットです。
    Old_Italic             = _Old_Italic             // Old_Italic は,スクリプト Old_Italic 内の Unicode 文字のセットです。
    Old_North_Arabian      = _Old_North_Arabian      // Old_North_Arabian は,スクリプト Old_North_Arabian 内の Unicode 文字のセットです。
    Old_Permic             = _Old_Permic             // Old_Permic は,スクリプト Old_Permic 内の Unicode 文字のセットです。
    Old_Persian            = _Old_Persian            // Old_Persian は,スクリプト Old_Persian 内の Unicode 文字のセットです。
    Old_Sogdian            = _Old_Sogdian            // Old_Sogdian は,スクリプト Old_Sogdian の Unicode 文字のセットです。
    Old_South_Arabian      = _Old_South_Arabian      // Old_South_Arabian は,スクリプト Old_South_Arabian 内の Unicode 文字のセットです。
    Old_Turkic             = _Old_Turkic             // Old_Turkic は,スクリプト Old_Turkic の Unicode 文字のセットです。
    Oriya                  = _Oriya                  // Oriya は,スクリプト Oriya の Unicode 文字のセットです。
    Osage                  = _Osage                  // Osage は,スクリプト Osage 内の Unicode 文字のセットです。
    Osmanya                = _Osmanya                // Osmanya は,スクリプト Osmanya の Unicode 文字のセットです。
    Pahawh_Hmong           = _Pahawh_Hmong           // Pahawh_Hmong は,スクリプト Pahawh_Hmong 内の Unicode 文字のセットです。
    Palmyrene              = _Palmyrene              // Palmyrene は, Palmyrene スクリプトの Unicode 文字のセットです。
    Pau_Cin_Hau            = _Pau_Cin_Hau            // Pau_Cin_Hau は,スクリプト Pau_Cin_Hau 内の Unicode 文字のセットです。
    Phags_Pa               = _Phags_Pa               // Phags_Pa は,スクリプト Phags_Pa 内の Unicode 文字のセットです。
    Phoenician             = _Phoenician             // Phoenician は,スクリプト Phoenician の Unicode 文字のセットです。
    Psalter_Pahlavi        = _Psalter_Pahlavi        // Psalter_Pahlavi は,スクリプト Psalter_Pahlavi 内の Unicode 文字のセットです。
    Rejang                 = _Rejang                 // Rejang は,スクリプト Rejang 内の Unicode 文字のセットです。
    Runic                  = _Runic                  // Runic は,スクリプト Runic の Unicode 文字のセットです。
    Samaritan              = _Samaritan              // Samaritan は, Samaritan スクリプトの Unicode 文字のセットです。
    Saurashtra             = _Saurashtra             // Saurashtra は,スクリプト Saurashtra の Unicode 文字のセットです。
    Sharada                = _Sharada                // Sharada は,スクリプト Sharada 内の Unicode 文字のセットです。
    Shavian                = _Shavian                // Shavian は,スクリプト Shavian の Unicode 文字のセットです。
    Siddham                = _Siddham                // Siddham は,スクリプト Siddham の Unicode 文字のセットです。
    SignWriting            = _SignWriting            // SignWriting は,スクリプト SignWriting 内の Unicode 文字のセットです。
    Sinhala                = _Sinhala                // Sinhala は,スクリプト Sinhala 内の Unicode 文字のセットです。
    Sogdian                = _Sogdian                // Sogdian は,スクリプト Sogdian の Unicode 文字のセットです。
    Sora_Sompeng           = _Sora_Sompeng           // Sora_Sompeng は,スクリプト Sora_Sompeng 内の Unicode 文字のセットです。
    Soyombo                = _Soyombo                // Soyombo は,スクリプト Soyombo の Unicode 文字のセットです。
    Sundanese              = _Sundanese              // Sundanese は,スクリプト Sundanese の Unicode 文字のセットです。
    Syloti_Nagri           = _Syloti_Nagri           // Syloti_Nagri は,スクリプト Syloti_Nagri 内の Unicode 文字のセットです。
    Syriac                 = _Syriac                 // Syriac は,スクリプト Syriac の Unicode 文字のセットです。
    Tagalog                = _Tagalog                // Tagalog は,スクリプトタガログ語の Unicode 文字のセットです。
    Tagbanwa               = _Tagbanwa               // Tagbanwa は,スクリプト Tagbanwa の Unicode 文字のセットです。
    Tai_Le                 = _Tai_Le                 // Tai_Le は,スクリプト Tai_Le 内の Unicode 文字のセットです。
    Tai_Tham               = _Tai_Tham               // Tai_Tham は,スクリプト Tai_Tham の Unicode 文字のセットです。
    Tai_Viet               = _Tai_Viet               // Tai_Viet は,スクリプト Tai_Viet 内の Unicode 文字のセットです。
    Takri                  = _Takri                  // Takri はスクリプト Takri の Unicode 文字のセットです。
    Tamil                  = _Tamil                  // タミル語は,スクリプトタミル語の Unicode 文字のセットです。
    Tangut                 = _Tangut                 // Tangut は,スクリプト Tangut の Unicode 文字のセットです。
    Telugu                 = _Telugu                 // Telugu は,スクリプト Telugu の Unicode 文字のセットです。
    Thaana                 = _Thaana                 // Thaana は,スクリプト Thaana の Unicode 文字のセットです。
    Thai                   = _Thai                   // Thai は,スクリプト Thai の Unicode 文字のセットです。
    Tibetan                = _Tibetan                // チベット語は,スクリプトチベット語の Unicode 文字のセットです。
    Tifinagh               = _Tifinagh               // Tifinagh は,スクリプト Tifinagh 内の Unicode 文字のセットです。
    Tirhuta                = _Tirhuta                // Tirhuta はスクリプト Tir ​​ huta の Unicode 文字のセットです。
    Ugaritic               = _Ugaritic               // Ugaritic は,スクリプト Ugaritic の Unicode 文字のセットです。
    Vai                    = _Vai                    // Vai はスクリプト Vai の Unicode 文字のセットです。
    Warang_Citi            = _Warang_Citi            // Warang_Citi は,スクリプト Warang_Citi 内の Unicode 文字のセットです。
    Yi                     = _Yi                     // Yi は,スクリプト Yi 内の Unicode 文字のセットです。
    Zanabazar_Square       = _Zanabazar_Square       // Zanabazar_Square は,スクリプト Zanabazar_Square 内の Unicode 文字のセットです。
)

これらの変数は *RangeTable 型です。

var (
    ASCII_Hex_Digit                    = _ASCII_Hex_Digit                    // ASCII_Hex_Digit は,プロパティ ASCII_Hex_Digit を持つ Unicode 文字のセットです。
    Bidi_Control                       = _Bidi_Control                       // Bidi_Control は,プロパティ Bidi_Control を持つ Unicode 文字のセットです。
    Dash                               = _Dash                               // Dash は,プロパティダッシュを持つ Unicode 文字のセットです。
    Deprecated                         = _Deprecated                         // Deprecated は,プロパティ Deprecated を持つ Unicode 文字のセットです。
    Diacritic                          = _Diacritic                          // Diacritic は,発音区別符号を持つ Unicode 文字のセットです。
    Extender                           = _Extender                           // Extender は, Extender プロパティを持つ Unicode 文字のセットです。
    Hex_Digit                          = _Hex_Digit                          // Hex_Digit は, Hex_Digit プロパティを持つ Unicode 文字のセットです。
    Hyphen                             = _Hyphen                             // Hyphen は,プロパティハイフンを持つ Unicode 文字のセットです。
    IDS_Binary_Operator                = _IDS_Binary_Operator                // IDS_Binary_Operator は,プロパティ IDS_Binary_Operator を持つ Unicode 文字のセットです。
    IDS_Trinary_Operator               = _IDS_Trinary_Operator               // IDS_Trinary_Operator は,プロパティ IDS_Trinary_Operator を持つ Unicode 文字のセットです。
    Ideographic                        = _Ideographic                        // Ideographic は, Ideographic プロパティを持つ Unicode 文字のセットです。
    Join_Control                       = _Join_Control                       // Join_Control は, Join_Control プロパティを持つ Unicode 文字のセットです。
    Logical_Order_Exception            = _Logical_Order_Exception            // Logical_Order_Exception は,プロパティ Logical_Order_Exception を持つ Unicode 文字のセットです。
    Noncharacter_Code_Point            = _Noncharacter_Code_Point            // Noncharacter_Code_Point は,プロパティ Noncharacter_Code_Point を持つ Unicode 文字のセットです。
    Other_Alphabetic                   = _Other_Alphabetic                   // Other_Alphabetic は,プロパティ Other_Alphabetic を持つ Unicode 文字のセットです。
    Other_Default_Ignorable_Code_Point = _Other_Default_Ignorable_Code_Point // Other_Default_Ignorable_Code_Point は,プロパティ Other_Default_Ignorable_Code_Point を持つ Unicode 文字のセットです。
    Other_Grapheme_Extend              = _Other_Grapheme_Extend              // Other_Grapheme_Extend は,プロパティ Other_Grapheme_Extend を持つ Unicode 文字のセットです。
    Other_ID_Continue                  = _Other_ID_Continue                  // Other_ID_Continue は,プロパティ Other_ID_Continue を持つ Unicode 文字のセットです。
    Other_ID_Start                     = _Other_ID_Start                     // Other_ID_Start は,プロパティ Other_ID_Start を持つ Unicode 文字のセットです。
    Other_Lowercase                    = _Other_Lowercase                    // Other_Lowercase は,プロパティ Other_Lowercase を持つ Unicode 文字のセットです。
    Other_Math                         = _Other_Math                         // Other_Math は,プロパティ Other_Math を持つ Unicode 文字のセットです。
    Other_Uppercase                    = _Other_Uppercase                    // Other_Uppercase は,プロパティ Other_Uppercase を持つ Unicode 文字のセットです。
    Pattern_Syntax                     = _Pattern_Syntax                     // Pattern_Syntax は, Pattern_Syntax プロパティを持つ Unicode 文字のセットです。
    Pattern_White_Space                = _Pattern_White_Space                // Pattern_White_Space は, Pattern_White_Space プロパティを持つ Unicode 文字のセットです。
    Prepended_Concatenation_Mark       = _Prepended_Concatenation_Mark       // Prepended_Concatenation_Mark は,プロパティ Prepended_Concatenation_Mark を持つ Unicode 文字のセットです。
    Quotation_Mark                     = _Quotation_Mark                     // Quotation_Mark は,プロパティ Quotation_Mark を持つ Unicode 文字のセットです。
    Radical                            = _Radical                            // Radical は, Radical プロパティを持つ Unicode 文字のセットです。
    Regional_Indicator                 = _Regional_Indicator                 // Regional_Indicator は,プロパティ Regional_Indicator を持つ Unicode 文字のセットです。
    STerm                              = _Sentence_Terminal                  // STerm は Sentence_Terminal のエイリアスです。
    Sentence_Terminal                  = _Sentence_Terminal                  // Sentence_Terminal は,プロパティ Sentence_Terminal を持つ Unicode 文字のセットです。
    Soft_Dotted                        = _Soft_Dotted                        // Soft_Dotted は, Soft_Dotted プロパティを持つ Unicode 文字のセットです。
    Terminal_Punctuation               = _Terminal_Punctuation               // Terminal_Punctuation は, Terminal_Punctuation プロパティを持つ Unicode 文字のセットです。
    Unified_Ideograph                  = _Unified_Ideograph                  // Unified_Ideograph は,プロパティ Unified_Ideograph を持つ Unicode 文字のセットです。
    Variation_Selector                 = _Variation_Selector                 // Variation_Selector は, Variation_Selector プロパティを持つ Unicode 文字のセットです。
    White_Space                        = _White_Space                        // White_Space は,プロパティ White_Space を持つ Unicode 文字のセットです。
)

CaseRanges は,非自己マッピングを持つすべての文字のケースマッピングを説明する表です。

var CaseRanges = _CaseRanges

Catergories は, Unicode カテゴリテーブルのセットです。

var Categories = map[string]*RangeTable{
    "C":  C,
    "Cc": Cc,
    "Cf": Cf,
    "Co": Co,
    "Cs": Cs,
    "L":  L,
    "Ll": Ll,
    "Lm": Lm,
    "Lo": Lo,
    "Lt": Lt,
    "Lu": Lu,
    "M":  M,
    "Mc": Mc,
    "Me": Me,
    "Mn": Mn,
    "N":  N,
    "Nd": Nd,
    "Nl": Nl,
    "No": No,
    "P":  P,
    "Pc": Pc,
    "Pd": Pd,
    "Pe": Pe,
    "Pf": Pf,
    "Pi": Pi,
    "Po": Po,
    "Ps": Ps,
    "S":  S,
    "Sc": Sc,
    "Sk": Sk,
    "Sm": Sm,
    "So": So,
    "Z":  Z,
    "Zl": Zl,
    "Zp": Zp,
    "Zs": Zs,
}

FoldCategory は,カテゴリ名をカテゴリの外側のコードポイントのテーブルにマッピングします。 これは,単純なケースの折りたたみではカテゴリの内側のコードポイントと同等です。 カテゴリ名のエントリがない場合は,そのような点はありません。

var FoldCategory = map[string]*RangeTable{
    "L":  foldL,
    "Ll": foldLl,
    "Lt": foldLt,
    "Lu": foldLu,
    "M":  foldM,
    "Mn": foldMn,
}

FoldScript は,スクリプト名をスクリプトの外側のコードポイントのテーブルにマッピングします。 これは,単純な大文字小文字の変換ではスクリプトの内側のコードポイントに相当します。 スクリプト名のエントリがない場合は,そのような点はありません。

var FoldScript = map[string]*RangeTable{
    "Common":    foldCommon,
    "Greek":     foldGreek,
    "Inherited": foldInherited,
}

GraphicRanges は, Unicode に従ってグラフィック文字のセットを定義します。

var GraphicRanges = []*RangeTable{
    L, M, N, P, S, Zs,
}

PrintRanges は, Go に従って表示可能文字のセットを定義します。 ASCII スペースの U+0020 は別々に処理されます。

var PrintRanges = []*RangeTable{
    L, M, N, P, S,
}

Properties は, Unicode プロパティテーブルのセットです。

var Properties = map[string]*RangeTable{
    "ASCII_Hex_Digit":                    ASCII_Hex_Digit,
    "Bidi_Control":                       Bidi_Control,
    "Dash":                               Dash,
    "Deprecated":                         Deprecated,
    "Diacritic":                          Diacritic,
    "Extender":                           Extender,
    "Hex_Digit":                          Hex_Digit,
    "Hyphen":                             Hyphen,
    "IDS_Binary_Operator":                IDS_Binary_Operator,
    "IDS_Trinary_Operator":               IDS_Trinary_Operator,
    "Ideographic":                        Ideographic,
    "Join_Control":                       Join_Control,
    "Logical_Order_Exception":            Logical_Order_Exception,
    "Noncharacter_Code_Point":            Noncharacter_Code_Point,
    "Other_Alphabetic":                   Other_Alphabetic,
    "Other_Default_Ignorable_Code_Point": Other_Default_Ignorable_Code_Point,
    "Other_Grapheme_Extend":              Other_Grapheme_Extend,
    "Other_ID_Continue":                  Other_ID_Continue,
    "Other_ID_Start":                     Other_ID_Start,
    "Other_Lowercase":                    Other_Lowercase,
    "Other_Math":                         Other_Math,
    "Other_Uppercase":                    Other_Uppercase,
    "Pattern_Syntax":                     Pattern_Syntax,
    "Pattern_White_Space":                Pattern_White_Space,
    "Prepended_Concatenation_Mark":       Prepended_Concatenation_Mark,
    "Quotation_Mark":                     Quotation_Mark,
    "Radical":                            Radical,
    "Regional_Indicator":                 Regional_Indicator,
    "Sentence_Terminal":                  Sentence_Terminal,
    "STerm":                              Sentence_Terminal,
    "Soft_Dotted":                        Soft_Dotted,
    "Terminal_Punctuation":               Terminal_Punctuation,
    "Unified_Ideograph":                  Unified_Ideograph,
    "Variation_Selector":                 Variation_Selector,
    "White_Space":                        White_Space,
}

スクリプトは, Unicode スクリプトテーブルのセットです。

var Scripts = map[string]*RangeTable{
    "Adlam":                  Adlam,
    "Ahom":                   Ahom,
    "Anatolian_Hieroglyphs":  Anatolian_Hieroglyphs,
    "Arabic":                 Arabic,
    "Armenian":               Armenian,
    "Avestan":                Avestan,
    "Balinese":               Balinese,
    "Bamum":                  Bamum,
    "Bassa_Vah":              Bassa_Vah,
    "Batak":                  Batak,
    "Bengali":                Bengali,
    "Bhaiksuki":              Bhaiksuki,
    "Bopomofo":               Bopomofo,
    "Brahmi":                 Brahmi,
    "Braille":                Braille,
    "Buginese":               Buginese,
    "Buhid":                  Buhid,
    "Canadian_Aboriginal":    Canadian_Aboriginal,
    "Carian":                 Carian,
    "Caucasian_Albanian":     Caucasian_Albanian,
    "Chakma":                 Chakma,
    "Cham":                   Cham,
    "Cherokee":               Cherokee,
    "Common":                 Common,
    "Coptic":                 Coptic,
    "Cuneiform":              Cuneiform,
    "Cypriot":                Cypriot,
    "Cyrillic":               Cyrillic,
    "Deseret":                Deseret,
    "Devanagari":             Devanagari,
    "Dogra":                  Dogra,
    "Duployan":               Duployan,
    "Egyptian_Hieroglyphs":   Egyptian_Hieroglyphs,
    "Elbasan":                Elbasan,
    "Ethiopic":               Ethiopic,
    "Georgian":               Georgian,
    "Glagolitic":             Glagolitic,
    "Gothic":                 Gothic,
    "Grantha":                Grantha,
    "Greek":                  Greek,
    "Gujarati":               Gujarati,
    "Gunjala_Gondi":          Gunjala_Gondi,
    "Gurmukhi":               Gurmukhi,
    "Han":                    Han,
    "Hangul":                 Hangul,
    "Hanifi_Rohingya":        Hanifi_Rohingya,
    "Hanunoo":                Hanunoo,
    "Hatran":                 Hatran,
    "Hebrew":                 Hebrew,
    "Hiragana":               Hiragana,
    "Imperial_Aramaic":       Imperial_Aramaic,
    "Inherited":              Inherited,
    "Inscriptional_Pahlavi":  Inscriptional_Pahlavi,
    "Inscriptional_Parthian": Inscriptional_Parthian,
    "Javanese":               Javanese,
    "Kaithi":                 Kaithi,
    "Kannada":                Kannada,
    "Katakana":               Katakana,
    "Kayah_Li":               Kayah_Li,
    "Kharoshthi":             Kharoshthi,
    "Khmer":                  Khmer,
    "Khojki":                 Khojki,
    "Khudawadi":              Khudawadi,
    "Lao":                    Lao,
    "Latin":                  Latin,
    "Lepcha":                 Lepcha,
    "Limbu":                  Limbu,
    "Linear_A":               Linear_A,
    "Linear_B":               Linear_B,
    "Lisu":                   Lisu,
    "Lycian":                 Lycian,
    "Lydian":                 Lydian,
    "Mahajani":               Mahajani,
    "Makasar":                Makasar,
    "Malayalam":              Malayalam,
    "Mandaic":                Mandaic,
    "Manichaean":             Manichaean,
    "Marchen":                Marchen,
    "Masaram_Gondi":          Masaram_Gondi,
    "Medefaidrin":            Medefaidrin,
    "Meetei_Mayek":           Meetei_Mayek,
    "Mende_Kikakui":          Mende_Kikakui,
    "Meroitic_Cursive":       Meroitic_Cursive,
    "Meroitic_Hieroglyphs":   Meroitic_Hieroglyphs,
    "Miao":                   Miao,
    "Modi":                   Modi,
    "Mongolian":              Mongolian,
    "Mro":                    Mro,
    "Multani":                Multani,
    "Myanmar":                Myanmar,
    "Nabataean":              Nabataean,
    "New_Tai_Lue":            New_Tai_Lue,
    "Newa":                   Newa,
    "Nko":                    Nko,
    "Nushu":                  Nushu,
    "Ogham":                  Ogham,
    "Ol_Chiki":               Ol_Chiki,
    "Old_Hungarian":          Old_Hungarian,
    "Old_Italic":             Old_Italic,
    "Old_North_Arabian":      Old_North_Arabian,
    "Old_Permic":             Old_Permic,
    "Old_Persian":            Old_Persian,
    "Old_Sogdian":            Old_Sogdian,
    "Old_South_Arabian":      Old_South_Arabian,
    "Old_Turkic":             Old_Turkic,
    "Oriya":                  Oriya,
    "Osage":                  Osage,
    "Osmanya":                Osmanya,
    "Pahawh_Hmong":           Pahawh_Hmong,
    "Palmyrene":              Palmyrene,
    "Pau_Cin_Hau":            Pau_Cin_Hau,
    "Phags_Pa":               Phags_Pa,
    "Phoenician":             Phoenician,
    "Psalter_Pahlavi":        Psalter_Pahlavi,
    "Rejang":                 Rejang,
    "Runic":                  Runic,
    "Samaritan":              Samaritan,
    "Saurashtra":             Saurashtra,
    "Sharada":                Sharada,
    "Shavian":                Shavian,
    "Siddham":                Siddham,
    "SignWriting":            SignWriting,
    "Sinhala":                Sinhala,
    "Sogdian":                Sogdian,
    "Sora_Sompeng":           Sora_Sompeng,
    "Soyombo":                Soyombo,
    "Sundanese":              Sundanese,
    "Syloti_Nagri":           Syloti_Nagri,
    "Syriac":                 Syriac,
    "Tagalog":                Tagalog,
    "Tagbanwa":               Tagbanwa,
    "Tai_Le":                 Tai_Le,
    "Tai_Tham":               Tai_Tham,
    "Tai_Viet":               Tai_Viet,
    "Takri":                  Takri,
    "Tamil":                  Tamil,
    "Tangut":                 Tangut,
    "Telugu":                 Telugu,
    "Thaana":                 Thaana,
    "Thai":                   Thai,
    "Tibetan":                Tibetan,
    "Tifinagh":               Tifinagh,
    "Tirhuta":                Tirhuta,
    "Ugaritic":               Ugaritic,
    "Vai":                    Vai,
    "Warang_Citi":            Warang_Citi,
    "Yi":                     Yi,
    "Zanabazar_Square":       Zanabazar_Square,
}

func In 1.2

func In(r rune, ranges ...*RangeTable) bool

In は,ルーン文字が範囲の 1 つにあるかどうかを報告します。

func Is

func Is(rangeTab *RangeTable, r rune) bool

Is は,ルーン文字が指定された範囲の表にあるかどうかを報告します。

func IsControl

func IsControl(r rune) bool

IsControl は,ルーン文字が制御文字かどうかを報告します。 C (Other) Unicode カテゴリには,サロゲートなどのより多くのコードポイントが含まれています。 それらをテストするには, Is(C, r) を使用してください。

func IsDigit

func IsDigit(r rune) bool

IsDigit は,ルーン文字が 10 進数であるかどうかを報告します。

func IsGraphic

func IsGraphic(r rune) bool

IsGraphic は,ルーン文字が Unicode によって Graphic として定義されているかどうかを報告します。 このような文字には,カテゴリ L, M, N, P, S, Z の文字,マーク,数字,句読点,記号,およびスペースが含まれます。

func IsLetter

func IsLetter(r rune) bool

IsLetter は,ルーン文字がレター文字かどうかを報告します (カテゴリー L) 。

func IsLower

func IsLower(r rune) bool

IsLower は,ルーン文字が小文字かどうかを報告します。

func IsMark

func IsMark(r rune) bool

IsMark は,ルーン文字がマーク文字 (カテゴリー M) かどうかを報告します。

func IsNumber

func IsNumber(r rune) bool

IsNumber は,ルーン文字が数字 (カテゴリ N) かどうかを報告します。

func IsOneOf

func IsOneOf(ranges []*RangeTable, r rune) bool

IsOneOf は,ルーン文字がいずれかの範囲のメンバーであるかどうかを報告します。 関数 "In" はより良いシグニチャを提供し, IsOneOf よりも優先して使用されるべきです。

func IsPrint

func IsPrint(r rune) bool

IsPrint は,ルーン文字が Go によって表示可能として定義されているかどうかを報告します。 そのような文字には,カテゴリー L, M, N, P, S の ASCII 文字,およびマーク,数字,句読点,記号,および ASCII 文字が含まれます。 この分類は IsGraphic と同じですが,唯一のスペーシング文字は ASCII スペース, U+0020 です。

func IsPunct

func IsPunct(r rune) bool

IsPunct は,ルーン文字が Unicode 句読文字 (カテゴリ P) かどうかを報告します。

func IsSpace

func IsSpace(r rune) bool

IsSpace は,ルーン文字が Unicode の White Space プロパティで定義されているスペース文字かどうかを報告します。 Latin-1 空間ではこれは

'\t', '\n', '\v', '\f', '\r', ' ', U+0085 (NEL), U+00A0 (NBSP).

スペーシング文字のその他の定義は,カテゴリ Z とプロパティ Pattern_White_Space によって設定されます。

func IsSymbol

func IsSymbol(r rune) bool

IsSymbol は,ルーン文字が記号文字かどうかを報告します。

func IsTitle

func IsTitle(r rune) bool

IsTitle は,ルーン文字がタイトルケース文字かどうかを報告します。

func IsUpper

func IsUpper(r rune) bool

IsUpper は,ルーン文字が大文字かどうかを報告します。

func SimpleFold

func SimpleFold(r rune) rune

SimpleFold は, Unicode で定義された単純な大文字小文字変換の下で同等の Unicode コードポイントを反復します。 rune と同等のコードポイント (rune 自体を含む) の中で, SimpleFold は,存在する場合は最小の rune > r を返します。 存在しない場合は,最小の rune >= 0 を返します。 r が有効な Unicode コードポイントでない場合, SimpleFold(r) は r を返します。

例えば :

SimpleFold('A') = 'a'
SimpleFold('a') = 'A'

SimpleFold('K') = 'k'
SimpleFold('k') = '\u212A' (Kelvin symbol, K)
SimpleFold('\u212A') = 'K'

SimpleFold('1') = '1'

SimpleFold(-2) = -2

コード:

fmt.Printf("%#U\n", unicode.SimpleFold('A'))      // 'a'
fmt.Printf("%#U\n", unicode.SimpleFold('a'))      // 'A'
fmt.Printf("%#U\n", unicode.SimpleFold('K'))      // 'k'
fmt.Printf("%#U\n", unicode.SimpleFold('k'))      // '\u212A' (ケルビン記号, K)
fmt.Printf("%#U\n", unicode.SimpleFold('\u212A')) // 'K'
fmt.Printf("%#U\n", unicode.SimpleFold('1'))      // '1'

出力:

U+0061 'a'
U+0041 'A'
U+006B 'k'
U+212A 'K'
U+004B 'K'
U+0031 '1'

func To

func To(_case int, r rune) rune

ルーン文字を指定された大文字と小文字の区別 : UpperCase, LowerCase ,または TitleCase にマッピングします。

コード:

const lcG = 'g'
fmt.Printf("%#U\n", unicode.To(unicode.UpperCase, lcG))
fmt.Printf("%#U\n", unicode.To(unicode.LowerCase, lcG))
fmt.Printf("%#U\n", unicode.To(unicode.TitleCase, lcG))

const ucG = 'G'
fmt.Printf("%#U\n", unicode.To(unicode.UpperCase, ucG))
fmt.Printf("%#U\n", unicode.To(unicode.LowerCase, ucG))
fmt.Printf("%#U\n", unicode.To(unicode.TitleCase, ucG))

出力:

U+0047 'G'
U+0067 'g'
U+0047 'G'
U+0047 'G'
U+0067 'g'
U+0047 'G'

func ToLower

func ToLower(r rune) rune

ToLower はルーン文字を小文字にマップします。

コード:

const ucG = 'G'
fmt.Printf("%#U\n", unicode.ToLower(ucG))

出力:

U+0067 'g'

func ToTitle

func ToTitle(r rune) rune

ToTitle はルーン文字をタイトルケースにマップします。

コード:

const ucG = 'g'
fmt.Printf("%#U\n", unicode.ToTitle(ucG))

出力:

U+0047 'G'

func ToUpper

func ToUpper(r rune) rune

ToUpper はルーン文字を大文字にマップします。

コード:

const ucG = 'g'
fmt.Printf("%#U\n", unicode.ToUpper(ucG))

出力:

U+0047 'G'

type CaseRange

CaseRange は,単純な (1 つのコードポイントから 1 つのコードポイントへの) 大文字小文字変換のための Unicode コードポイントの範囲を表します。 範囲は Lo から Hi までで,固定ストライドは 1 です。 デルタは,その文字の別のケースでコードポイントに到達するためにコードポイントに追加する番号です。 彼らは否定的かもしれません。 ゼロの場合は,その文字が対応する場合であることを意味します。 対応する上限と下限のペアを交互に並べたシーケンスを表す特別なケースがあります。 それはの固定 Delta で表示されます。

{UpperLower, UpperLower, UpperLower}

定数 UpperLower は,他の方法では不可能なデルタ値を持ちます。

type CaseRange struct {
    Lo    uint32
    Hi    uint32
    Delta d
}

type Range16

Range16 は, 16 ビットの Unicode コードポイントの範囲を表します。 範囲は Lo から Hi までで,指定されたストライドを持ちます。

type Range16 struct {
    Lo     uint16
    Hi     uint16
    Stride uint16
}

type Range32

Range32 は, Unicode コードポイントの範囲を表し, 1 つ以上の値が 16 ビットに収まらない場合に使用されます。 範囲は Lo から Hi までで,指定されたストライドを持ちます。 Lo と Hi は常に >= 1<<16 でなければなりません。

type Range32 struct {
    Lo     uint32
    Hi     uint32
    Stride uint32
}

type RangeTable

RangeTable は,セット内のコードポイントの範囲を一覧表示することによって, Unicode コードポイントのセットを定義します。 範囲は,スペースを節約するために, 16 ビット範囲のスライスと 32 ビット範囲のスライスの 2 つのスライスに分けられています。 2 つのスライスはソートされた順序で重複しないようにする必要があります。 また, R32 には, 0x10000 (1<<16) 以上の値のみを含める必要があります。

type RangeTable struct {
    R16         []Range16
    R32         []Range32
    LatinOffset int // Hi <= MaxLatin1 の R16 のエントリ数; added in Go 1.1
}

type SpecialCase

SpecialCase は,トルコ語などの言語固有のケースマッピングを表します。 SpecialCase のメソッドは標準のマッピングを (上書きすることによって) カスタマイズします。

type SpecialCase []CaseRange
var AzeriCase SpecialCase = _TurkishCase
var TurkishCase SpecialCase = _TurkishCase

コード:

t := unicode.TurkishCase

const lci = 'i'
fmt.Printf("%#U\n", t.ToLower(lci))
fmt.Printf("%#U\n", t.ToTitle(lci))
fmt.Printf("%#U\n", t.ToUpper(lci))

const uci = 'İ'
fmt.Printf("%#U\n", t.ToLower(uci))
fmt.Printf("%#U\n", t.ToTitle(uci))
fmt.Printf("%#U\n", t.ToUpper(uci))

出力:

U+0069 'i'
U+0130 'İ'
U+0130 'İ'
U+0069 'i'
U+0130 'İ'
U+0130 'İ'

func (SpecialCase) ToLower

func (special SpecialCase) ToLower(r rune) rune

ToLower はルーン文字を小文字にマップし,特別なマッピングを優先します。

func (SpecialCase) ToTitle

func (special SpecialCase) ToTitle(r rune) rune

ToTitle はルーンをタイトルケースにマッピングして,特別なマッピングを優先します。

func (SpecialCase) ToUpper

func (special SpecialCase) ToUpper(r rune) rune

ToUpper はルーン文字を大文字にマッピングし,特別なマッピングを優先します。

Bugs

サブディレクトリ

名前 概要
..
utf16 utf16 は,UTF-16 シーケンスのエンコードとデコードを実装します。
utf8 utf8 パッケージは,UTF-8 エンコードテキスト用関数と定数を実装します。