有没有用 sphinx 查询复制的正则表达式术语提取?

Is there anyway to replicated regex term extraction with sphinx query?

使用简单的正则表达式:

Status: (.*?),(.*?)\s

我可以轻松地从

中提取"Updated"和"In-Progress"
Status: In-Progress,Updated

https://regex101.com/r/mV7gF5/1

我正在尝试用 Sphinx 做一些类似的事情,因为它要快得多。有什么办法可以用 SphinxQL 做到这一点吗?我什至不介意它是否需要 post-processing,但我一辈子都想不出 sphinxQL,因为它看起来更直白。

好吧,sphinx 可以为您提供包含单词 'Status' 的文档列表,甚至包含 Status: .*,.* 的文档列表(如果要将 : and , 添加到 charset_table)。

但它不能进行任何类型的术语提取,需要 post 处理这些文档(并且可能对它们执行正则表达式!)。最接近的是 CALL SNIPPETS,它可以进行文本匹配,但它没有正则表达式语法。