9个不稳定版本 (3个重大变更)

0.4.4 2019年10月7日
0.4.3 2019年10月7日
0.4.2 2019年8月26日
0.4.1 2019年7月30日
0.1.0 2019年3月16日

#2604解析器实现

Download history 64/week @ 2024-04-01 19/week @ 2024-04-08 196/week @ 2024-04-22 290/week @ 2024-04-29 18/week @ 2024-05-06 40/week @ 2024-05-27 146/week @ 2024-07-01 20/week @ 2024-07-15

166 每月下载量

MIT/Apache

21KB
399

反向查找URL

Build Status

此crate提供了一种解析器,用于在字符串中按反向顺序搜索URL。

所有功能都由Parser结构处理,它接受chars作为输入。

示例

可以将文本以反向顺序输入解析器

use rfind_url::{Parser, ParserState};

let mut parser = Parser::new();

for c in "There_is_no_URL_here".chars().rev() {
    assert_eq!(parser.advance(c), ParserState::MaybeUrl);
}

解析器在将URL的最后一个字符推入时立即返回URL的长度。否则,它将返回None

use rfind_url::{Parser, ParserState};

let mut parser = Parser::new();

// Parser guarantees there's currently no active URL
assert_eq!(parser.advance(' '), ParserState::NoUrl);

// URLs are only returned once they are complete
for c in "ttps://example.org".chars().rev() {
    assert_eq!(parser.advance(c), ParserState::MaybeUrl);
}

// Parser has detected a URL spanning the last 19 characters
assert_eq!(parser.advance('h'), ParserState::Url(19));

无运行时依赖项

功能