【发布时间】:2011-03-11 02:20:34
【问题描述】:
我正在使用一个工具来为我们的数据库生成测试数据。对于字符串字段的列,我们可以选择输入将用于为列生成值的正则表达式。我想要一个生成 15 个字符串的正则表达式,如下所示:
- 字符 1-6 应包含 YYMMDD(当前年、月、日),例如“100702”。如果 RegEx 无法确定当前日期,则硬连线值“100702”就可以了。
- 字符 7-8 应为“25”或“26”
- 字符 9-15 应该是一系列连续的数字,从“0000001”开始,然后是“0000002”等。如果无法做到这一点,则可以使用一组随机但唯一的 7 位数字。
这可能吗?
【问题讨论】:
-
您可能想提及您正在寻找的正则表达式的“风味”,因为它们可能会有所不同(例如,C# 与 Javascript)
-
我认为不可能从正则表达式中获取当前日期、递增数字或随机数字集。
-
除了
2[56]部分之外,这里没有任何东西可以用正则表达式完成。但是,您可以轻松编写一个执行此操作的函数。对于最后一部分,您可以使用运行 ID(例如,在 Oracle 上有一个序列)
标签: regex