#snake #inflection #camel #pluralize #inflector

cruet

为 Rust 添加基于 String 的屈折变化。支持蛇形、中划线、驼峰、句子、类、标题和表格大小写,以及序数化、反序数化、去模数化、外键和复数/单数变化,作为特性和对 String 类型操作的纯函数。

7 个不稳定版本

0.14.0 2023 年 11 月 23 日
0.13.3 2023 年 2 月 3 日
0.13.2 2022 年 11 月 28 日
0.13.1 2022 年 9 月 23 日
0.11.4 2022 年 9 月 22 日

#63 in 文本处理

Download history 18738/week @ 2024-04-18 22153/week @ 2024-04-25 22968/week @ 2024-05-02 20984/week @ 2024-05-09 22467/week @ 2024-05-16 23175/week @ 2024-05-23 25528/week @ 2024-05-30 25032/week @ 2024-06-06 22764/week @ 2024-06-13 28376/week @ 2024-06-20 27842/week @ 2024-06-27 23861/week @ 2024-07-04 25752/week @ 2024-07-11 24680/week @ 2024-07-18 22122/week @ 2024-07-25 20431/week @ 2024-08-01

99,110 每月下载量
用于 22 个 Crates (3 直接)

BSD-2-Clause

130KB
2.5K SLoC

Rust屈折变化器

此项目是从https://github.com/whatisinternet/Inflector 分支出来的。原始作者不再维护此项目。

Build Status Crates.ioCrate downloads

为 Rust 添加基于 String 的屈折变化。支持蛇形、中划线、斜杠、驼峰、句子、类和标题大小写,以及序数化、反序数化、去模数化、去常量化、外键、表格大小写和复数/单数变化,作为特性和对 &str 和 String 类型的操作纯函数。


文档

文档可以在 README 中找到,或者通过下面的 rust 文档访问。

带有示例的 Rust 文档


安装

作为一个 crate

[dependencies]
cruet = "*"

自行编译

  1. 安装 Rust 和 cargo
  2. git clone https://github.com/chrislearn/cruet
  3. 库:cd cruet && cargo build --release --lib
  4. 您可以在 target/release 中找到库

用法/示例

// to use methods like String.to_lower_case();
use cruet::Inflector;
fn main() {
  let camel_case_string: String = "some_string".to_camel_case();
}

或者

// to use methods like to_snake_case(&str);
use cruet;

// use cruet::to_class_case;
// use cruet::is_class_case;

// use cruet::to_camel_case;
// use cruet::is_camel_case;

// use cruet::to_pascal_case;
// use cruet::is_pascal_case;

// use cruet::to_screamingsnake_case;
// use cruet::is_screamingsnake_case;

// use cruet::to_snake_case;
// use cruet::is_snake_case;

// use cruet::to_kebab_case;
// use cruet::is_kebab_case;

// use cruet::to_train_case;
// use cruet::is_train_case;

// use cruet::to_sentence_case;
// use cruet::is_sentence_case;

// use cruet::to_title_case;
// use cruet::is_title_case;

// use cruet::to_table_case;
// use cruet::is_table_case;

// use cruet::ordinalize;
// use cruet::deordinalize;

// use cruet::to_foreign_key;
// use cruet::is_foreign_key;

// use cruet::demodulize;
// use cruet::deconstantize;

// use cruet::to_plural;
// use cruet::to_singular;
fn main() {
  let camel_case_string: String = to_camel_case("some_string");
}

贡献

此项目旨在成为一个安全、欢迎的协作空间,贡献者应遵守 贡献者公约 行为准则。

依赖关系

~2.2–3MB
~54K SLoC