Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 自动正则表达式学习器?_Regex_Node.js_Algorithm - Fatal编程技术网

Regex 自动正则表达式学习器?

Regex 自动正则表达式学习器?,regex,node.js,algorithm,Regex,Node.js,Algorithm,我有循环模式的字符串。就像这样: /socket.io/1/xhr-polling/993bcoZK7UkiqsNYpbja?t=1407502307019 /socket.io/1/xhr-polling/993bcoZK7UkiqsNYpbja?t=2222222222222 /socket.io/1/xhr-polling/993bco56465456465465a?t=333333333333 还有这样的事情: /api/bucket/53e4ce6584df65130e7ead66/

我有循环模式的字符串。就像这样:

/socket.io/1/xhr-polling/993bcoZK7UkiqsNYpbja?t=1407502307019
/socket.io/1/xhr-polling/993bcoZK7UkiqsNYpbja?t=2222222222222
/socket.io/1/xhr-polling/993bco56465456465465a?t=333333333333
还有这样的事情:

/api/bucket/53e4ce6584df65130e7ead66/data/metadata
/api/bucket/465456456456465456445456/data/metadata
/api/bucket/898989898989898989898989/data/metadata
更像是这样

如何找到这些字符串中的模式并聚合它们是最好的方法

比如获取某种json:

{
   pattern : "/api/bucket/*/data/metadata"
   routes : ["/api/bucket/53e4ce6584df65130e7ead66/data/metadata",
             "/api/bucket/465456456456465456445456/data/metadata",
             "/api/bucket/898989898989898989898989/data/metadata"]
}

确定找到了解决方案,答案中引用的Aho-Corasick匹配算法不适用。Levenshtein距离算法是。如果发现Node.JS可以使用此模块:

现在更好了吗?我想从字符串中获取某种与公共模式匹配的正则表达式我在Node.JS中找到了类似的东西,一个可以从字符串生成正则表达式的正则表达式trie。现在我试图找到一种简单的方法来找到字符串的匹配概率,然后将它们传递给regex-trie。