#string-matching #built #mind #search #matcher #web #text-search

nightly fiveo

一个针对Web设计的近似字符串匹配库

5个不稳定版本

使用旧的Rust 2015

0.3.2 2018年3月17日
0.3.1 2018年3月12日
0.3.0 2018年3月11日
0.2.0 2018年3月5日
0.1.0 2018年3月4日

#697 in WebAssembly

24 monthly downloads

ISC许可证

69KB
267

fiveo

LICENSE Build Status Crates.io Version

fiveo是一个针对Web使用而构建的模糊文本搜索库。API的设计考虑到从类似C的外部函数接口进行使用,以便可以轻松嵌入WebAssembly对象。

示例

extern crate fiveo;

use fiveo::Matcher;
use fiveo::MatcherParameters;

fn main() {
    // Create a new matcher with a single entry.
    let searcher = fiveo::Matcher::new("/this/is/a/test/dir\n", MatcherParameters::default()).unwrap();
    // Search for "tiatd" and return a maximum of 10 results.
    let matches = searcher.search("tiatd", 10);

    assert_eq!(0, matches[0].index());
    assert_eq!(1.0f32, matches[0].score());
}

文档

安装

fiveo可以通过在crates.io上可用的crate使用Cargo进行安装。

[dependencies]
five = "0.3.2"

默认情况下,fiveo将构建并链接到Rust标准库。对于WebAssembly构建的使用,有一个编译功能可用,可以切换到对liballoclibcore的依赖。

您可以通过以下方式激活这些功能

[dependencies.fiveo]
version = "0.3.2"
features = ["webassembly"]

致谢

fiveo受到Sublime模糊文本匹配器和@hansonw对Cmd-T算法的移植的启发

无运行时依赖

特性