#pattern-matching #binary-data #basic

no-std binmatch

一个简单的二进制模式匹配库

8个稳定版本

1.2.0 2024年5月8日
1.1.0 2024年4月22日
1.0.5 2024年4月14日
1.0.4 2024年4月13日

#1725 in 编码

Download history 141/week @ 2024-04-17 37/week @ 2024-04-24 5/week @ 2024-05-01 124/week @ 2024-05-08 2/week @ 2024-05-15 5/week @ 2024-05-22 1/week @ 2024-06-05 2/week @ 2024-06-12

每月487次下载

AGPL-3.0-or-later

16KB
214

Binmatch

一个简单的二进制模式匹配库

查看文档中的示例


lib.rs:

一个简单的二进制模式匹配库

基本用法如下

let pattern = Pattern::new("00 __ 00 ??").unwrap();
let data = vec![0x12, 0x13, 0x00, 0x14, 0x00, 0x42, 0x15];
let matches = pattern.find_matches(data); // Or Pattern::find_matches_with_index if you need the index
assert_eq!(matches, vec![0x42]);

所有需要的函数都可以在[模式]中找到

使用 #![no_std]

首先,禁用默认功能 std
cargoadd binmatch --no-default-features
正常的 Pattern::new 现在不再可用,因为它需要 std 来运行
每次你想创建一个新的 [模式] 时,现在都必须使用 Pattern::new_unchecked

依赖项

~110KB