在 python 中匹配正则表达式的随机数据生成器

Ale*_*lex 5 python regex random

在 python 中,我正在寻找 python 代码,我可以使用它来创建与任何正则表达式匹配的随机数据。例如,如果正则表达式是

\d{1,100}
Run Code Online (Sandbox Code Playgroud)

我想要一个随机数列表,随机长度在 1 到 100 之间(均匀分布)

有一些可用的“正则表达式反相器”(请参阅​​此处)可以计算所有可能的匹配,这不是我想要的,而且非常不切实际。例如,上面的示例有超过 10^100 个可能的匹配项,这些匹配项永远无法存储在列表中。我只需要一个函数来随机返回匹配项。

也许已经有一个可用的软件包可以用来完成此任务?我需要一个函数来为任何正则表达式创建匹配字符串,而不仅仅是给定的一个或其他正则表达式,但可能是 100 个不同的正则表达式。我只是无法自己对它们进行编码,我希望函数提取模式以返回一个匹配的字符串。

Joh*_*ang 0

从这个答案

您可以尝试使用 python 调用此 perl 模块:

https://metacpan.org/module/String::Random