使用Rex来生成字符串数组

        我们在项目中,经常要使用正则表达式,现在有一个工具可以按正则表达式生成数据.正则表达式的语法忘记了吗?看这儿.如果你熟悉正则表达式

,让我们进入正题.这个TOOL的名称叫Regular Expression Exploration. 你可以从这儿下载 .目前的版本是1.0 release. Rex是一个命令行工具,

具体用法可以在CMD下执行便可以看到用法,这个是.net的程序.我们可以引用它,然后用下面的Code来生成我们想要的字符串数组.

   1:          /// <summary>
   2:          /// Generates the test.
   3:          /// </summary>
   4:          /// <remarks>Author Petter Liu  http://wintersun.cnblogs.com </remarks>
   5:          [Test]
   6:          public void GenerateTest()
   7:          {
   8:              string regex = @"^1(3[4-9]|5[012789]|8[78])\d{8}$";
   9:              RexSettings settings = new RexSettings(regex) { k = 10, encoding = CharacterEncoding.ASCII};
  10:              var results = RexEngine.GenerateMembers(settings);
  11:              foreach (var result in results)
  12:              {
  13:                  Console.WriteLine(result);
  14:              }
  15:          }

输出:

18897190518
18889349691
18792280668
18831202949
15789824598
15998890392
13709912389
18779992048
13967892889
15928882992

这里我们使用的是手机号码的正则表达式.设置生成数是10,编码ASCII.还有很多选项.可以看它的成员.这些字符串数据用来做什么就看你的了.

Author: Petter Liu   http://www.cnblogs.com/wintersun

希望这篇POST对您有帮助.

你可能感兴趣的:(字符串)