#regex #generator #la #aléatoire #régulières #d-expressions #permettant

regex-generator

允许根据选择的难度生成随机正则表达式

1 个不稳定版本

0.1.0 2023年4月19日

#9 in #la

MIT/Apache

10KB
206 代码行,不包括注释

正则表达式生成器

描述

Regex generator 是一个库,允许从简单的字符串生成随机正则表达式。

示例

为单词 "brebis" 生成正则表达式

fn brebis_regex_with_default_sequence() -> String {
    let word = "brebis";
    RegexGenerator::full_regex(word, None/*default = Some(2)*/) // [br]{2}[eb]*(is|je|xy)
}
fn brebis_regex_with_sequence_3() -> String {
    let word = "brebis";
    RegexGenerator::full_regex(word, Some(3)) // [erb]*(hkq|bis|upj|ahj)
}

为单词 "brebis" 生成正则表达式分割

fn brebis_regex_splited_with_default_sequence() -> Vec<RegexPart> {
    let word = "brebis";
    RegexGenerator::regexes_splited(word, None) 
    /* output ->
    [
        RegexPart { word_part: "br", regex: "(si|br|qn)" }, 
        RegexPart { word_part: "eb", regex: "[eb]+" }, 
        RegexPart { word_part: "is", regex: "[is]{2}" }
    ]
     */
}

依赖项

~2.3–3.5MB
~58K SLoC