Generieren Sie alle Permutationen von Text aus einem Regex-Muster in C #

Ich habe also ein Regex-Muster und möchte alle Textpermutationen generieren, die aus diesem Muster zulässig wären.

Beispiel:

var pattern = "^My (?:biological|real)? Name is Steve$";
var permutations = getStringPermutations(pattern);

Dies würde die folgende Liste von Zeichenfolgen zurückgeben:

Mein Name ist Steve

Mein richtiger Name ist Steve

Mein biologischer Name ist Steve

Aktualisieren: Offensichtlich hat ein regulärer Ausdruck eine unendliche Anzahl von Übereinstimmungen, so dass ich nur aus optionalen String-Literalen generieren möchte, wie in (?: Biological | real)? aus meinem obigen Beispiel. Etwas wie (.) * Hat zu viele Übereinstimmungen, daher werde ich sie nicht daraus generieren.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage