9 个稳定版本
2.1.1 | 2024 年 8 月 3 日 |
---|---|
2.0.1 | 2024 年 7 月 28 日 |
1.2.1 | 2024 年 7 月 23 日 |
432 在 Rust 模式 中
每月下载量 866
17KB
293 行代码(不包括注释)
转义(零拷贝)
使用 C 风格转义序列转义字符串,尽量减少内存复制。其他包(例如 unescaper
)喜欢为每个字符串分配内存,但大多数字符串不需要转义,因此可以原样返回。这个库就是这样做的。
它还支持自定义转义序列解析器,而不是标准的 C 风格转义序列;一个例子可以在 tests/lua_escapes.rs
中找到,使用库来解析 Lua 转义序列。
通过返回迭代器来支持 no_std
,或者可以返回一个 Cow
,它根据需要使用 std
或 alloc
功能(默认启用 std
)分配。
用法
assert_eq!(unescape_zero_copy::unescape_default(r"Hello\x0aworld").unwrap(), "Hello\nworld");
许可证
代码以 MIT 许可证发布。