#json #rfc8259 #cddl

escape8259

RFC8259兼容的字符串转义和反转义

4个版本

0.5.3 2024年6月8日
0.5.2 2022年8月24日
0.5.1 2021年8月16日
0.5.0 2020年4月17日

#413 in 编码

Download history 29643/week @ 2024-04-30 27985/week @ 2024-05-07 36276/week @ 2024-05-14 31532/week @ 2024-05-21 36063/week @ 2024-05-28 33398/week @ 2024-06-04 42733/week @ 2024-06-11 44963/week @ 2024-06-18 46226/week @ 2024-06-25 41263/week @ 2024-07-02 44260/week @ 2024-07-09 46998/week @ 2024-07-16 48671/week @ 2024-07-23 49865/week @ 2024-07-30 53064/week @ 2024-08-06 50800/week @ 2024-08-13

每月211,229次下载
81crate(直接使用9个)中使用

MIT许可协议

13KB
216

escape8259执行RFC8259兼容的字符串转义和反转义。

RFC8259是一个JSON编码标准。存在许多JSON编码器,但其他RFC使用相同的字符串转义机制,因此能够单独访问字符串转义函数很有用。

示例

use escape8259::{escape, unescape};

let s = "A null (\0) and a double-quote (\")";
assert_eq!(escape(s), r#"A null (\u0000) and a double-quote (\")"#);

let crab = r#"This is a crab: \ud83e\udd80"#;
assert_eq!(unescape(crab).unwrap(), "This is a crab: 🦀");

// We accept encodings that weren't really necessary.
assert_eq!(unescape(r#"\u0041\n"#).unwrap(), "A\n");

let multiline = r#"hello
 world"#;
assert_eq!(escape(multiline), r#"hello\n world"#);

lib.rs:

escape8259执行RFC8259兼容的字符串转义和反转义。

RFC8259是一个JSON编码标准。存在许多JSON编码器,但其他RFC使用相同的字符串转义机制,因此能够单独访问字符串转义函数很有用。

示例

use escape8259::{escape, unescape};

let s = "A null (\0) and a double-quote (\")";
assert_eq!(escape(s), r#"A null (\u0000) and a double-quote (\")"#);

let crab = r#"This is a crab: \ud83e\udd80"#;
assert_eq!(unescape(crab).unwrap(), "This is a crab: 🦀");

// We accept encodings that weren't really necessary.
assert_eq!(unescape(r#"\u0041\n"#).unwrap(), "A\n");

let multiline = r#"hello
 world"#;
assert_eq!(escape(multiline), r#"hello\n world"#);

无运行时依赖