当前位置: 编程技术>其它
asp.net(c#) 使用Rex正则来生成字符串数组的代码
来源: 互联网 发布时间:2014-10-16
本文导语: 看这儿.如果你熟悉正则表达式 ,让我们进入正题.这个TOOL的名称叫Regular Expression Exploration. 你可以从这儿下载 .目前的版本是1.0 release. Rex是一个命令行工具, 具体用法可以在CMD下执行便可以看到用法,这个是.net的程序.我们可以...
看这儿.如果你熟悉正则表达式
///
/// Generates the test.
///
/// Author Petter Liu http://wintersun.cnblogs.com
[Test]
public void GenerateTest()
{
string regex = @"^1(3[4-9]|5[012789]|8[78])d{8}$";
RexSettings settings = new RexSettings(regex) { k = 10, encoding = CharacterEncoding.ASCII};
var results = RexEngine.GenerateMembers(settings);
foreach (var result in results)
{
Console.WriteLine(result);
}
}
输出:
18897190518
18889349691
18792280668
18831202949
15789824598
15998890392
13709912389
18779992048
13967892889
15928882992
这里我们使用的是手机号码的正则表达式.设置生成数是10,编码ASCII.还有很多选项.可以看它的成员.这些字符串数据用来做什么就看你的了.
Author: Petter Liu
,让我们进入正题.这个TOOL的名称叫Regular Expression Exploration. 你可以从这儿下载 .目前的版本是1.0 release. Rex是一个命令行工具,
具体用法可以在CMD下执行便可以看到用法,这个是.net的程序.我们可以引用它,然后用下面的Code来生成我们想要的字符串数组.
代码如下:
///
/// Generates the test.
///
/// Author Petter Liu http://wintersun.cnblogs.com
[Test]
public void GenerateTest()
{
string regex = @"^1(3[4-9]|5[012789]|8[78])d{8}$";
RexSettings settings = new RexSettings(regex) { k = 10, encoding = CharacterEncoding.ASCII};
var results = RexEngine.GenerateMembers(settings);
foreach (var result in results)
{
Console.WriteLine(result);
}
}
输出:
18897190518
18889349691
18792280668
18831202949
15789824598
15998890392
13709912389
18779992048
13967892889
15928882992
这里我们使用的是手机号码的正则表达式.设置生成数是10,编码ASCII.还有很多选项.可以看它的成员.这些字符串数据用来做什么就看你的了.
Author: Petter Liu