2 releases
new 0.1.1 | Nov 21, 2024 |
---|---|
0.1.0 | Nov 21, 2024 |
#3 in #allowlist
10KB
143 lines
match-domain
: Rapid checker for the prefix and suffix matching of domain names, written in Rust
Double-array trie based domain matcher, written in Rust.
This enables you to check if the given domain name matches the prefix or suffix of the domain name in the trie.
Usage
use match_domain::DomainMatchingRule;
let domain_matching_rule = DomainMatchingRule::try_from(vec![
"www.google.com".to_string(),
"*.google.com".to_string(),
"yahoo.co.*".to_string(),
])
.unwrap();
assert!(domain_matching_rule.is_matched("wwxx.google.com"));
assert!(domain_matching_rule.is_matched("yahoo.co.jp"));
assert!(!domain_matching_rule.is_matched("www.yahoo.com"));
assert!(!domain_matching_rule.is_matched("www.yahoo.co.jp"));
Note that for the DomainMatchingRule::is_matched(&self, domain_name: &str) -> bool
method:
- the argument
domain_name
should be in lowercase - the argument
domain_name
should not contain a leading dot
Dependencies
~2.9–4.5MB
~80K SLoC