match-domain

Crates.iomatch-domain
lib.rsmatch-domain
version0.1.2
sourcesrc
created_at2024-11-21 08:55:18.52366
updated_at2024-11-22 06:59:49.300216
descriptionRapid checker for the prefix and suffix matching of domain names
homepagehttps://github.com/junkurihara/rust-match-domain
repositoryhttps://github.com/junkurihara/rust-match-domain
max_upload_size
id1455930
size12,461
Jun Kurihara (junkurihara)

documentation

README

match-domain: Rapid checker for the prefix and suffix matching of domain names, written in Rust

match-domain match-domain License: MIT Unit Test

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
Commit count: 7

cargo fmt