5 个版本

0.2.2 2024年3月22日
0.2.1 2023年11月26日
0.2.0 2023年11月26日
0.1.1 2022年9月27日
0.1.0 2022年7月22日

#702文本处理

Download history 2/week @ 2024-03-10 123/week @ 2024-03-17 10/week @ 2024-03-24 31/week @ 2024-03-31

214 每月下载次数

ISC 许可证

18KB
313

ncase [ɪn'keɪs] — 强制执行大小写风格

为什么?

为了我能

% for f in *.pdf; do
	mv "$f" "$(ncase -s `basename "$f" .pdf`).pdf"
done

二进制

安装

% cargo install ncase

用法

对字符串执行大小写风格,并将其写入标准输出

% ncase --pascal this is a test string
ThisIsATestString
% ncase --lower ThisIsATestString
this is a test string

如果构建时启用了 rand 功能,则默认执行 rANdOm cASe

% ncase this is a test string
ThiS IS A tesT stRINg

否则,默认执行 tOGGLE cASE

% ncase this is a test string
tHIS iS a tEST sTRING

安装

将依赖项添加到您的 Cargo.toml

[dependencies]
ncase = "0.2"

或从命令行

% cargo add ncase@0.2

用法

使用免费函数进行一次性大小写转换

assert_eq!(ncase::camel("camel case"), "camelCase");
assert_eq!(ncase::snake("snake case"), "snake_case");

如果您需要将一个字符串转换为多种大小写风格,请使用 Words

use ncase::Words;

let s = "Lorem ipsum dolor sit amet";
let w = Words::from(s);

assert_eq!(w.kebab(), "lorem-ipsum-dolor-sit-amet");
assert_eq!(w.title(), "Lorem Ipsum Dolor Sit Amet");

或如果您想使用分隔符正则表达式(需要 regex 功能)

use ncase::Words;
use regex::Regex;

let s = "Lorem, ipsum (dolor _sit)_ amet";
let sep = Regex::new(r"[\pP\s]+").unwrap();
let w = Words::with_separator(s, &sep);

assert_eq!(w.lower(), "lorem ipsum dolor sit amet");
assert_eq!(w.upper(), "LOREM IPSUM DOLOR SIT AMET");

依赖项

~1–2.2MB
~44K SLoC