22个稳定版本
使用旧Rust 2015
1.15.2 | 2022年11月10日 |
---|---|
1.15.0 | 2022年10月1日 |
1.14.0 | 2021年9月18日 |
1.13.0 | 2020年10月4日 |
0.5.0 | 2018年10月19日 |
#3 in #snake-case
6,642 每月下载量
用于 30 个crate (20 直接)
2MB
68K SLoC
voca_rs
Voca_rs是一个用于操作[Unicode]字符串的Rust库。
Voca_rs在Foreign Types上实现,即String
和str
。尊重Unicode。
Voca_rs受Voca.js (JavaScript), string.py (Python), Inflector (Rust), 和 Grafite (PHP) 的启发。
TL;DR
使用函数
use voca_rs::*;
let input_string = "LazyLoad with XMLHttpRequest and snake_case";
let string_in_words = split::words(&input_string);
// => ["Lazy", "Load", "with", "XML", "Http", "Request", "and", "snake", "case"]
let words_in_string = &string_in_words.join(" ");
// => "Lazy Load with XML Http Request and snake case"
let truncated_string = chop::prune(&words_in_string, 21, "");
// => "Lazy Load with XML..."
let sliced_string = chop::slice(&truncated_string, 5, -2);
// => "Load with XML."
let snaked_string = case::snake_case(&sliced_string);
// => "load_with_xml"
使用特性(所有方法均以下划线符号开头)
use voca_rs::Voca;
"LazyLoad with XMLHttpRequest and snake_case"
._words()
// => ["Lazy", "Load", "with", "XML", "Http", "Request", "and", "snake", "case"]
.join(" ")
// => "Lazy Load with XML Http Request and snake case"
._prune(21, "")
// => "Lazy Load with XML..."
._slice(5, -2)
// => "Load with XML."
._snake_case();
// => "load_with_xml"
文档
请参阅完整的文档:https://docs.rs/voca_rs/
运行测试: cargo test
构建文档: cargo doc
-> ./target/doc/voca_rs/index.html
构建项目: cargo build
-> ./target/debug
函数
大小写
- camel_case
- capitalize
- decapitalize
- kebab_case
- lower_case
- lower_first
- pascal_case
- shouty_kebab_case
- shouty_snake_case
- snake_case
- swap_case
- title_case
- train_case
- upper_case
- upper_first
切割
- after
- after_last
- before
- before_last
- char_at
- code_point_at
- first
- foreign_key
- grapheme_at
- last
- limit_words
- max
- min
- prune
- removeprefix
- removesuffix
- slice
- substr
- substring
- truncate
计数
转义
索引
操作
- expand_spaces
- expand_tabs
- finish
- insert
- latinise
- pad
- pad_left
- pad_right
- repeat
- 替换
- 替换全部
- 反转
- 反转字符群
- 生成短名
- 分割
- 开始
- 转义
- 修剪
- 修剪左侧
- 修剪右侧
- 换行
- 零填充
查询
- 以...结尾
- 包含
- 是字母
- 是字母数字
- 是空白
- 是驼峰式命名
- 是大写字母开头
- 是小写字母开头
- 是数字
- 是空的
- 是外键
- 是小写字母
- 是小写字母开头
- 是短横线命名
- 是大写短横线命名
- 是数字
- 是帕斯卡命名
- 是蛇形命名
- 是大写蛇形命名
- 是标题
- 是训练案例
- 是大写字母
- 是大写字母开头
- 匹配
- 查询
- 以...开头
分割
移除
工具
版权
由A. Merezhanyi编写
许可证
根据MIT许可证授权
依赖项
~2.7–4MB
~62K SLoC