我有一個只包含一個字符串這種語言L: 寫更簡潔可以使用交集縮短此正則表達式嗎?
此字符串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']));
和你的問題是什麼? –
你能告訴我們使用交集來描述你的語言的語法嗎? – Bergi
假設您可以在正則表達式中使用交點運算符。 我想通過使用這n個符號來交叉不同類型的語言來生成字符串來縮短這個正則表達式。 –