正则表达式生成器和通用器
项目描述
正则表达式生成器和通用器
一个用于任意字符串集合的正则表达式生成器。根据用户的选择返回具有精确或泛化字符集的模式,并便于对模式进行聚类以创建超模式。
安装
使用git和pip克隆此存储库并分别安装库。
git clone https://gitlab.com/wxwilcke/pyRXG.git
cd pyRXG/
pip install .
或直接从PyPi安装
pip install pyRXG
用法
导入包并生成一组正则表达式
In [1]: import rxg
In [2]: patterns = rxg.generate(['Pizza Cats', 'Donkey Kong', 'Salty Dogs', 'ace123', 'pillow50', 'john99'])
In [3]: patterns
Out[3]:
RegexPatternList([^P[a-z]{4}\sC[a-t]{3}$,
^D[e-y]{5}\sK[g-o]{3}$,
^S[a-y]{4}\sD[g-s]{3}$,
^[a-e]{3}[1-3]{3}$,
^[i-w]{6}[0-5]{2}$,
^[h-o]{4}9{2}$])
将精度更改为不精确以更好地比较模式
In [4]: patterns.set_precision(rxg.Precision.INEXACT)
In [5]: patterns
Out[5]:
RegexPatternList([^[A-Z][a-z]{4}\s[A-Z][a-z]{3}$,
^[A-Z][a-z]{5}\s[A-Z][a-z]{3}$,
^[A-Z][a-z]{4}\s[A-Z][a-z]{3}$,
^[a-z]{3}[0-9]{3}$,
^[a-z]{6}[0-9]{2}$,
^[a-z]{4}[0-9]{2}$])
对正则表达式进行泛化(聚类)。返回匹配模式的索引以及相应的超模式
In [6]: patterns.generalize()
Out[6]:
[(^[D-S][a-z]{4,5}\s[C-K][a-t]{3}$, {0, 1, 2}),
(^[a-w]{3,6}[0-9]{2,3}$, {3, 4, 5})]
项目详情
关闭
pyrxg-1.0.0.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | c16cc5d5cb6b43f21a289931505b84f8020515332b5df1788c1fc63d3196f1c6 |
|
MD5 | 1b532b989bc1e7af696a541f6f409be0 |
|
BLAKE2b-256 | 07b82e1e15b937ab512f3d513ba9b62104795f2f514efdd116e4aa804ebca8d7 |