use std::sync::LazyLock; /// Legacy: uuid or username static USER_MENTION_RE: LazyLock regex_lite::Regex> = LazyLock::new(|| regex_lite::Regex::new(r"\s*([^<]+?)\s*").unwrap()); /// Legacy: label static MENTION_TAG_RE: LazyLock regex_lite::Regex> = LazyLock::new(|| { regex_lite::Regex::new( r#"]*>\s*([^<]*?)\s*"#, ) .unwrap() }); /// New format: @[type:id:label] static MENTION_BRACKET_RE: LazyLock regex_lite::Regex> = LazyLock::new(|| regex_lite::Regex::new(r"@\[([a-z]+):([^:\]]+):([^\]]+)\]").unwrap()); pub fn user_mention_re() -> &'static regex_lite::Regex { &USER_MENTION_RE } pub fn mention_tag_re() -> &'static regex_lite::Regex { &MENTION_TAG_RE } pub fn mention_bracket_re() -> &'static regex_lite::Regex { &MENTION_BRACKET_RE }