<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Hi Ceki,<br><br>Just wondering about the SUB-STRING patterns, such as "*/if/then/*" and "*/if/else/*".<br><br>I'm currently working on adding a permuterm tree to the concurrent-trees[1] project. It will support fast retrieval from the tree for wildcard queries like: X, X*, *X, *X*, X*Y. These patterns would be fully accelerated.<br><br>It looks like the *X* variant might fit your sub-string patterns.<br><br>It's also possible to have partial acceleration for additional patterns such as X*Y*Z, *X*Y*Z, *X*Y*Z* and so on with any number of terms, which involves using the first and last terms to find a candidate set in the tree and then doing on-the-fly filtering for the terms in the middle.<br><br>Would that help? I'm about 80% of the way to completion.<br><br>[1] <a href="https://code.google.com/p/concurrent-trees/">https://code.google.com/p/concurrent-trees/</a><br><br>Niall</body></html>