生成一个与Python中的RegEx匹配的String

时间:2011-01-07 16:04:32

标签: python regex stringbuilder

  

可能重复:
  Reversing a regular expression in python

我想我遇到的问题听起来比现在更容易......我不太确定。我想定义一个正则表达式,我想构建一些匹配它的字符串。

我可以导入任何具有此功能的模块吗?最好不要使用re.searchre.match的暴力方法。必须有一种更优雅的方式来做到这一点。

3 个答案:

答案 0 :(得分:22)

我一直在为generating random strings with Python

开发一个小帮手库

它包含一个允许您从正则表达式创建字符串的方法xeger()

>>> import rstr
>>> rstr.xeger(r'[A-Z]\d[A-Z] \d[A-Z]\d')
u'M5R 2W4'

现在,它适用于大多数基本正则表达式。

答案 1 :(得分:10)

exrex模块执行此操作:https://github.com/asciimoo/exrex

答案 2 :(得分:1)

对于某些正则表达式,可能的字符串列表可以是无限的。例如:

a*

包括

a
aa
aaa

等。因此,无法为给定的正则表达式生成所有字符串。