#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 • Rust 包仓库 79/week @ 2024-04-05 • Rust 包仓库 111/week @ 2024-04-12 • Rust 包仓库 103/week @ 2024-04-19 • Rust 包仓库 52/week @ 2024-04-26 • Rust 包仓库 62/week @ 2024-05-03 • Rust 包仓库 67/week @ 2024-05-10 • Rust 包仓库 67/week @ 2024-05-17 • Rust 包仓库 56/week @ 2024-05-24 • Rust 包仓库 76/week @ 2024-05-31 • Rust 包仓库 46/week @ 2024-06-07 • Rust 包仓库 88/week @ 2024-06-14 • Rust 包仓库 67/week @ 2024-06-21 • Rust 包仓库 62/week @ 2024-06-28 • Rust 包仓库 34/week @ 2024-07-05 • Rust 包仓库 359/week @ 2024-07-12 • Rust 包仓库 51/week @ 2024-07-19 • Rust 包仓库

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);

无运行时依赖