我试图创建一个系统,在那里我可以正则表达式的值转换为整数,反之亦然。其中零是最基本的正则表达式(可能"/./"
),和任何后续的数字会更复杂的正则表达式的RegExp的计数系统
我的最好的办法,到目前为止是坚持一切可以包含一个正则表达式中到一个数组的可能值:
values = [ "!", ".", "\/", "[", "]", "(", ")", "a", "b", "-", "0", "9", .... ]
,然后从该阵列采取如下:
def get(integer)
if(integer.zero?)
return '';
end
integer = integer - 1;
if(integer < values.length)
return values[integer]
end
get((integer/values.length).floor) + get(integer % values.length);
end
sample_regex = /#{get(100)}/;
这种方法的最大的问题是一个无效正则表达式可以很容易地生成。
有一个已建立的算法来实现我想要?如果没有,有什么建议?
感谢名单
史蒂夫
我该如何“将它们与正规表达规则结合起来?”? 正则表达式字典不符合我的目的,因为我需要无限范围的正则表达式。从最简单的形式开始,向无穷大发展越来越复杂。 – Stefan 2009-05-27 18:36:08