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.