1 个不稳定版本
0.0.1 | 2019年7月21日 |
---|
#24 在 #inspector
18KB
300 行代码(不含注释)
字符串检查器
用于检查 Unicode 字符串的命令行工具
如何安装
待办事项
用法
cargo运行 hello world
示例输出
[utf-8]
bytes: 68 65 6c 6c 6f 20 77 6f 72 6c 64
chars: h e l l o w o r l d
hello world
有关详细用法,请参阅 cargo run -- -h
版本控制
本项目遵循 语义版本控制。
贡献
欢迎所有贡献,但以下标签的问题可能是开始的好地方
有关更多详细信息,请参阅 CONTRIBUTING.md
许可证
所有代码均在 MIT 许可证 下免费使用
lib.rs
:
用于检查 Unicode 字符串的实用工具。
用法
使用 DecodedString 将字节数据和 rust-encoding 编码包装起来。
let bytes = [65, 66, 67];
let string = string_inspector::DecodedString::decode(&bytes, encoding::all::ISO_8859_2).unwrap();
assert_eq!("ABC", string.to_string());
assert_eq!("\u{1b}[32mA \u{1b}[0m\u{1b}[34mB \u{1b}[0m\u{1b}[32mC \u{1b}[0m", string.format_characters());
assert_eq!("\u{1b}[32m41 \u{1b}[0m\u{1b}[34m42 \u{1b}[0m\u{1b}[32m43 \u{1b}[0m", string.format_bytes());
DecodedString 包含一系列 DecodedCharacters,它们保留原始的字节表示形式
let bytes = [65, 66, 67];
let string = string_inspector::DecodedString::decode(&bytes, encoding::all::ISO_8859_2).unwrap();
assert_eq!(3, string.characters.len());
assert_eq!('A', string.characters[0].character);
assert_eq!(vec![65], string.characters[0].bytes);
依赖关系
~3–11MB
~81K SLoC