方法
- C
- D
- T
常量
UNICODE_VERSION | = | RbConfig::CONFIG["UNICODE_VERSION"] |
实现支持的 |
实例公共方法
compose(codepoints) 链接
将分解的字符组合成组合形式。
源代码: 显示 | 在 GitHub 上
# File activesupport/lib/active_support/multibyte/unicode.rb, line 21 def compose(codepoints) codepoints.pack("U*").unicode_normalize(:nfc).codepoints end
decompose(type, codepoints) 链接
将组合的字符分解成分解形式。
源代码: 显示 | 在 GitHub 上
# File activesupport/lib/active_support/multibyte/unicode.rb, line 12 def decompose(type, codepoints) if type == :compatibility codepoints.pack("U*").unicode_normalize(:nfkd).codepoints else codepoints.pack("U*").unicode_normalize(:nfd).codepoints end end
tidy_bytes(string, force = false) 链接
将所有 ISO-8859-1 或 CP1252 字符替换为其 UTF-8 等效项,从而生成有效的 UTF-8 字符串。
传递 true
将强制整理所有字节,假设字符串的编码完全是 CP1252 或 ISO-8859-1。
源代码: 显示 | 在 GitHub 上
# File activesupport/lib/active_support/multibyte/unicode.rb, line 30 def tidy_bytes(string, force = false) return string if string.empty? || string.ascii_only? return recode_windows1252_chars(string) if force string.scrub { |bad| recode_windows1252_chars(bad) } end