【发布时间】:2009-10-07 23:53:00
【问题描述】:
所以我有一个正则表达式模式,我想生成该模式允许的所有文本排列。
例子:
var pattern = "^My (?:biological|real)? Name is Steve$";
var permutations = getStringPermutations(pattern);
这将返回下面的字符串列表:
我叫史蒂夫
我的真名是史蒂夫
我的生名是史蒂夫
更新: 显然,正则表达式具有无限数量的匹配项,所以我只想生成可选的字符串文字,如 (?:biological|real)?从我上面的例子。 (.)* 之类的匹配项太多,因此我不会从中生成它们。
【问题讨论】:
-
所以它必须以
My开头,对吗?你不想捕捉像 Steve is my real name 这样的排列吗?
标签: c# .net regex string permutation