當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Elixir String.normalize用法及代碼示例


Elixir語言中 String.normalize 相關用法介紹如下。

用法:

normalize(string, form)

string 中的所有字符轉換為由 form 標識的 Unicode 規範化形式。

跳過無效的 Unicode 代碼點並轉換字符串的其餘部分。如果您希望算法停止並返回無效代碼點,請改用 :unicode.characters_to_nfd_binary/1 :unicode.characters_to_nfc_binary/1 :unicode.characters_to_nfkd_binary/1 :unicode.characters_to_nfkc_binary/1

規範化形式:nfkc:nfkd 不應盲目應用於任意文本。因為它們消除了許多格式差異,它們將阻止round-trip 與許多舊字符集之間的轉換。

形式

支持的形式有:

  • :nfd - 規範化形式的規範分解。字符通過規範等價分解,多個組合字符按特定順序排列。

  • :nfc - 規範化形式的規範組合。字符被分解,然後通過規範等價重新組合。

  • :nfkd - 規範化形式兼容性分解。字符通過兼容性等價分解,多個組合字符按特定順序排列。

  • :nfkc - 規範化表單兼容性組合。字符被分解,然後通過兼容性等價重新組合。

例子

iex> String.normalize("yêṩ", :nfd)
"yêṩ"

iex> String.normalize("leña", :nfc)
"leña"

iex> String.normalize("fi", :nfkd)
"fi"

iex> String.normalize("fi", :nfkc)
"fi"

相關用法


注:本文由純淨天空篩選整理自elixir-lang.org大神的英文原創作品 String.normalize(string, form)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。