3 个版本
0.1.2 | 2021 年 12 月 9 日 |
---|---|
0.1.1 | 2021 年 12 月 9 日 |
0.1.0 | 2021 年 12 月 9 日 |
#1814 在 文本处理
8KB
182 行
Unicode Clusters
Unicode Clusters 是一个库,它支持将可变宽度的 Unicode 字符作为单个项目处理,允许进行类似数组的索引等操作。
#[test]
fn example() {
let input = "AȜनमस्ते";
let gcs = GraphemeCluster::graphemes(input);
assert!(gcs.len() == 6, "length");
assert_eq!(gcs[0].as_string(), "A");
assert_eq!(gcs[1].as_string(), "Ȝ");
assert_eq!(gcs[2].as_string(), "न");
assert_eq!(gcs[3].as_string(), "म");
assert_eq!(gcs[4].as_string(), "स्");
assert_eq!(gcs[5].as_string(), "ते");
assert_eq!(gcs[0].as_bytes()[..], [65]);
assert_eq!(gcs[1].as_bytes()[..], [200, 156]);
assert_eq!(gcs[2].as_bytes()[..], [224, 164, 168]);
assert_eq!(gcs[3].as_bytes()[..], [224, 164, 174]);
assert_eq!(gcs[4].as_bytes()[..], [224, 164, 184, 224, 165, 141]);
assert_eq!(gcs[5].as_bytes()[..], [224, 164, 164, 224, 165, 135]);
}
依赖项
~550KB