生成匹配模式的随机字符串

stringbrewer的Python项目详细描述


stringbrewer:生成匹配模式的随机字符串

模式是用StringBrewer模式语言指定的,并生成 由两部分组成:一个recipe和一组配料。配方是 本质上是正则表达式的一种修改形式;空白不是 重要的,每个成分的名称都被它的定义所取代。安 component是一个以空格分隔的项目列表;每个项目都是 字符(指定为文本字符或Unicode 十六进制中的codepoint),由连字符分隔的字符范围, 或用逗号分隔的项的联合。成分也可能含有 参考其他成分。在

这一点最好通过例子来理解。下面的模式生成 泰卢固语素:

# Generate random Telugu-like morphemes
(Base HalantGroup{0,2} TopPositionedVowel?){1,3}

Base = క-న,ప-హ
Halant = 0C4D
HalantGroup = Halant Base
TopPositionedVowel = 0C46-0C48,0C4A-0C4C

第一行是注释,第二行是配方,空白行。 表示成分列表的开头。我们来看看配料。 Base0x0C15-0C28或{}范围内的任何字符。 (我们将这些指定为文字,只是因为我们可以)。一个Halant是 字符0x0C4D。一个HalantGroup是一个后跟一个碱基的悬垂物。在

现在你了解了配料,如果你 考虑一下正则表达式的语法:一个基后跟零、一或 两个halant组,加上一个可选的顶部位置元音,都在 一次和三次。在

初始化 ^{pr2}$

初始化StringBrewer对象

必须提供文件名、字符串或配方 字符串和成分字典。在

参数

  • from_file-包含模式的文件的文件名。在
  • from_string-字符串中的模式。在
  • recipe-模式的配方部分。在
  • ingredients-正则表达式词典。在

生成全部

|generate_all()

生成所有组合的列表。在

如果组合超过100000个,则例外 引发以避免内存不足。在

生成

|generate(min_length=0,max_length=None)

生成单个随机组合。在

参数

  • min_length-最小长度(如果未指定,则为零)
  • max_length-最大长度(如果未指定,则无最大值)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
如何使用Netbeans在Java中创建可执行文件   swing Set不透明(真/假);JAVA   java JPA无法删除具有onotomany关系和cascatype all的实体   java Hibernate自参考映射难题   Java/从字符串到Java代码   java为什么我已经在取整了,却得到了一个无终止小数扩展?   java Wicket onsubmit信息对话框   java如何使用类、类加载器和URL获取资源   java在多模块项目中使用License Maven插件时出错   java HashSet“contains”方法是如何工作的?   图像JavaPNG显示为黑色   java如何在保持内容完整的同时在两个活动之间切换?   JAVA在Tomcat 7.0.27中,WAR无法为Prod正确解包   listview的java onclicklistener   JavaXPages托管Bean可以跨多个数据库工作吗?   java无法停止服务空对象引用错误Android   java将UTF8编码的字符串转换为人类可读的字符串   JavaSpring与JBossSAML的集成   java如何替换AuthorizationCodeInstalledApp类?