Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/389.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
Java前缀树映射_Java_Collections_Treemap - Fatal编程技术网

Java前缀树映射

Java前缀树映射,java,collections,treemap,Java,Collections,Treemap,我有很多超过(10k)的regexp规则,我想知道哪些规则与特定字符串匹配。我需要一个集合,在那里我可以有效地存储这个正则表达式规则,以便检测哪些规则可以应用于字符串 我不想重复所有的规则,并决定哪些是好的,哪些不是。对于这个问题有什么好的算法吗 最后,为了解决这个问题,我创建了一个regex规则容器树映射。我将regexp拆分为更小的部分,其中regexpt部分仅适用于单个字符,而小的regexp部分将是一个树映射节点 通过使用此树形图,每个匹配请求只需花费log(n)。请更具体一些。你在找图

我有很多超过(10k)的regexp规则,我想知道哪些规则与特定字符串匹配。我需要一个集合,在那里我可以有效地存储这个正则表达式规则,以便检测哪些规则可以应用于字符串


我不想重复所有的规则,并决定哪些是好的,哪些不是。对于这个问题有什么好的算法吗

最后,为了解决这个问题,我创建了一个regex规则容器树映射。我将regexp拆分为更小的部分,其中regexpt部分仅适用于单个字符,而小的regexp部分将是一个树映射节点


通过使用此树形图,每个匹配请求只需花费log(n)。

请更具体一些。你在找图书馆的建议吗?在这种情况下,恐怕这个问题会偏离主题。如果您在使用正则表达式或实现有限自动机时遇到任何问题,请解释这些问题。对于“线性解决方案不好”部分,线性在什么方面?您必须至少查看整个输入。最后,您到底想计算什么?事实上,所有字符串都可以匹配regexp,这至少需要线性时间。您是说您想针对单个字符串测试所有10k正则表达式,而不需要迭代所有10k正则表达式吗?听起来很难。你的正则表达式是否有任何结构上的相似性,可以让你在测试一个正则表达式后丢弃大量的正则表达式?我想实现一个拼写词干分析器,其中是一个包含大量前缀和后缀规则的词缀文件。这个规则非常相似,但我必须决定女巫是好是坏。有限状态传感器似乎是最好的选择。我想使用这个与regexp模式匹配,但我不知道如何才能做到这一点。