我有一个只包含一个字符串这种语言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个符号来交叉不同类型的语言来生成字符串来缩短这个正则表达式。 –