5 个版本
0.1.4 | 2020年6月23日 |
---|---|
0.1.3 | 2020年5月21日 |
0.1.2 | 2020年5月18日 |
0.1.1 | 2020年5月16日 |
0.1.0 | 2020年5月15日 |
#1972 在 文本处理
17KB
246 行
grep-rs
用 rust 编写的类似 grep 的库
当前正在工作的功能
搜索文件
搜索标准输入
排除模式
打印模式首次出现之前的所有行
打印模式首次出现之后的所有行
不区分大小写
(新增) 正则表达式
示例
示例在假设的目录中执行,包含
Basic_file_1.txt Basic_file_2.txt
Basic_file_3.txt Basic_file_4.txt
查看 examples/ 目录中的示例
或运行 cargo run --example [文件名]
lib.rs
:
grep-rs 是一个简单的文本搜索工具
当前正在工作的功能
- 支持搜索文件
- 支持搜索标准输入
- 搜索包含特定模式的文本
- 搜索排除特定模式的文本
- 打印模式首次出现之前的所有行
- 打印模式首次出现之后的所有行
- 不区分大小写
- 简单正则表达式
安装
将其添加到您的 Cargo.toml 中
libgrep-rs = "0.1.3"
示例
use libgrep_rs::searcher::Searcher;
use libgrep_rs::options::Options;
fn main() {
let options = Options::default();
let text = String::from("Hello World\n libgrep-rs test");
let pattern = String::from("World");
let searcher = Searcher::new(pattern, text, options, Some(String::from("\n")));
//Some(String::from("\n")) is the deliminator, it could be anything
//If set to None, it will use the default "\n"
let output = searcher.search();
println!("{}", output);
}
如果成功,输出将是
Hello World
您可以在 examples/ 目录中查看其他示例
依赖项
~2–3MB
~53K SLoC