#html #convert-html #character #escaping

entities

提供将 HTML 实体转换到和从原始数据所需的原始数据

6 个版本 (2 个稳定)

使用旧的 Rust 2015

1.0.2-rc.12023 年 4 月 10 日
1.0.1 2018 年 2 月 9 日
1.0.0 2016 年 12 月 5 日
0.3.0 2016 年 12 月 4 日
0.1.0 2016 年 12 月 3 日

#121 in 文本处理

Download history 7820/week @ 2024-03-14 8739/week @ 2024-03-21 9899/week @ 2024-03-28 8467/week @ 2024-04-04 8519/week @ 2024-04-11 8635/week @ 2024-04-18 9928/week @ 2024-04-25 11022/week @ 2024-05-02 9921/week @ 2024-05-09 10878/week @ 2024-05-16 8136/week @ 2024-05-23 9611/week @ 2024-05-30 10062/week @ 2024-06-06 11725/week @ 2024-06-13 10134/week @ 2024-06-20 9634/week @ 2024-06-27

43,388 每月下载量
174 个 crate 中使用 (7 个直接)

MIT 许可证

280KB
11K SLoC

entities 构建状态 Crates.io

提供将 HTML 实体转换到和从原始数据所需的原始数据。

基本用法

use entities::ENTITIES;

fn main() {
    let entity = ENTITIES
        .iter()
        .find(|e| e.entity == ">")
        .unwrap();

    assert_eq!(entity.characters, ">");
    assert_eq!(entity.entity, ">");
}

实体与“字符”之间没有一对一的映射,这就是为什么这个 crate 提供了一个平面数组而不是映射——映射实体的最佳方式取决于你要解决的问题。

如果你想创建一个映射结构,你可以使用静态 str 切片来重用此 crate 中静态分配的字符串,例如。

fn make_mapping() -> HashMap<&'static str, &'static str> {
    let mut mapping = HashMap::new();
    mapping.insert(ENTITIES[0].entity, ENTITIES[0].characters);
    mapping
}

文档

https://docs.rs/entities

没有运行时依赖