用于人类可读模式匹配的C#库?

Mat*_*ord 14 .net c# regex expression-trees

有人知道C#库是否匹配人类可读的模式?与正则表达式相似,但更友好?

给定一个字符串值,我希望能够将它与以下行的模式匹配:

(this AND that) OR "theother"
Run Code Online (Sandbox Code Playgroud)

其中"this"和"that"是LIKE表达式,而"theother"由于引号而完全匹配.

更新: 好的,只是为了更清楚一点.我想要这个的原因是允许最终用户输入他们自己的模式,作为字符串值.因此,我正在使用与regex类似的方式,但使用人类可读的字符串,我的用户将很容易理解

var pattern = "(this AND that) OR \"theother\""; // Could be fetched from textbox
var match = SomeLib.IsMatch(myString, pattern);
Run Code Online (Sandbox Code Playgroud)

Mat*_*ord 1

好吧,经过大量搜索,我无法准确找到我想要的东西,但需要让某些东西快速运行,并且由于我使用的系统已经具有相关的 DLL,所以我已经最终使用 Lucene.NET 创建了一个临时索引,其中包含单个文档,并添加了我需要搜索的相关字段。然后我可以针对它执行我想要的查询类型,并检查是否有任何匹配项。通过使用 RAMDirectory 类,我能够在内存中创建索引,并在查找后将其释放,因此无需将索引文件写入磁盘。

我确信可能有一些不太密集的方法可以实现这一目标,但正如我所说,这是我在这段时间里能想到的最好的方法。

感谢大家的建议,我还是想知道是否有更好的方法?