私はこの言語Lを持っていますが、これには1つの文字列しか含まれていません: より簡潔に書かれています
この文字列は2(2 ^ n-1)文字なので、減らしたいと思います。正規表現の交差によってこの文字列が生成される正規言語を見つけることができれば、交差を使用することを考えていました。
これが役立つ場合に備えて、ここに再帰関数があります。
function recursiveRegex(charset) {
if(charset.length == 0) {
return [];
} else {
var char = charset.splice(charset.length - 1, 1);
var returnVal = recursiveRegex(charset);
return returnVal.concat(returnVal) + char ;
}
}
console.log(recursiveRegex(['a1', 'a2', 'a3', 'a4']));