#unicode #iteration #unic #utilities #text

unic-char-basics

UNIC — Unicode 字符工具 — 基本稳定字符属性

2 个不稳定版本

0.9.0 2019 年 3 月 3 日
0.8.0 2019 年 1 月 2 日

21 in #unic

Download history 79/week @ 2024-04-05 111/week @ 2024-04-12 103/week @ 2024-04-19 52/week @ 2024-04-26 62/week @ 2024-05-03 67/week @ 2024-05-10 67/week @ 2024-05-17 56/week @ 2024-05-24 76/week @ 2024-05-31 46/week @ 2024-06-07 88/week @ 2024-06-14 67/week @ 2024-06-21 62/week @ 2024-06-28 34/week @ 2024-07-05 359/week @ 2024-07-12 51/week @ 2024-07-19

516 下载/月
用于 5 个 crate (2 直接)

MIT/Apache

17KB
164 lines

UNIC — Unicode 字符工具 — 基本稳定字符属性

Crates.io Documentation

此 UNIC 组件提供基本的 Unicode 字符属性,这些属性是字符串处理的核心,并由 Unicode 标准稳定化,将来永远不会改变。


lib.rs:

UNIC — Unicode 字符工具 — 基本稳定字符属性

一种简单的方法来控制对字符范围的迭代。

示例

extern crate unic_char_basics;
use unic_char_basics::{is_noncharacter, is_private_use};

// Plane 0 (BMP)
assert_eq!(is_noncharacter('\u{0}'), false);
assert_eq!(is_noncharacter('\u{80}'), false);
assert_eq!(is_noncharacter('\u{e000}'), false);
assert_eq!(is_noncharacter('\u{f8ff}'), false);
assert_eq!(is_noncharacter('\u{fdd0}'), true);
assert_eq!(is_noncharacter('\u{fdef}'), true);
assert_eq!(is_noncharacter('\u{fffd}'), false);
assert_eq!(is_noncharacter('\u{fffe}'), true);
assert_eq!(is_noncharacter('\u{ffff}'), true);

assert_eq!(is_private_use('\u{0}'), false);
assert_eq!(is_private_use('\u{80}'), false);
assert_eq!(is_private_use('\u{e000}'), true);
assert_eq!(is_private_use('\u{f8ff}'), true);
assert_eq!(is_private_use('\u{fdd0}'), false);
assert_eq!(is_private_use('\u{fdef}'), false);
assert_eq!(is_private_use('\u{fffd}'), false);
assert_eq!(is_private_use('\u{fffe}'), false);
assert_eq!(is_private_use('\u{ffff}'), false);

// Plane 16 (PUA-B)
assert_eq!(is_noncharacter('\u{10_0000}'), false);
assert_eq!(is_noncharacter('\u{10_0001}'), false);
assert_eq!(is_noncharacter('\u{10_fffd}'), false);
assert_eq!(is_noncharacter('\u{10_fffe}'), true);
assert_eq!(is_noncharacter('\u{10_ffff}'), true);

assert_eq!(is_private_use('\u{10_0000}'), true);
assert_eq!(is_private_use('\u{10_0001}'), true);
assert_eq!(is_private_use('\u{10_fffd}'), true);
assert_eq!(is_private_use('\u{10_fffe}'), false);
assert_eq!(is_private_use('\u{10_ffff}'), false);

无运行时依赖