2

我正在开发一个数据库服务器软件产品(参见我的个人资料),我们看到需要在我们的软件中实现自由文本搜索。我们使用的查询语言标准仅支持使用 BT 类型 Regex 的自由文本搜索。我们可以将我们的自由文本数据库索引与 Regex 一起使用的唯一方法似乎是实现我们自己的。我对 SO 的问题是:

  • 我在哪里可以找到关于如何实现 BT 风格正则表达式的论文/示例/模式?

  • 是否值得考虑采用开源 C/C++ 正则表达式库之一并更改代码以满足我们的需求?

4

2 回答 2

2

如果我没记错的话,SPARQL 使用基于 PERL 正则表达式的 XPath/XQuery 正则表达式语法(至少 W3C 文档是这么说的)

如果确实如此,那么您可以使用来自http://www.pcre.org/的 PCRE

它被授权为 BSD,因此您将能够在商业产品中使用它

如果您的语法稍作修改,您可能可以编写一个小例程将其规范化为 PCRE 使用的 PERL 语法

于 2012-10-01T11:35:40.730 回答
0

我在 REGEX indexing online 上找到了两篇关于该主题的论文;一份来自贝尔实验室,一份来自加州大学洛杉矶分校/IBM。我仍然不确定是使用现有的 Regex 库并对其进行修改还是从头开始编写一个。

于 2012-10-02T14:30:46.983 回答