使用正则表达式中的术语来提取 unknown/proximity 值?

Use terms in regex to extract unknown/proximity values?

假设我使用 Sphinx 寻找 term/pattern 例如

(Cost|Price|Charge) Near $<somevalue>

其中 somevalue 是 1 到 6 位之间的整数?在正则表达式中,我可以使用组和 运行 将正则表达式 return <somevalue> 做到这一点。在 Sphinx 中有类似的方法吗?

换句话说对于字符串

at a cost of 0 each

300 美元将 returned。

对于字符串:

Price: 2.25

192.25 美元将 returned

本质上是在寻找一个值,但只有在被模式包围时才如此。

不,没有 'regex' 风格的通配符。没有什么只能匹配数字。

您可以将 $ 添加到 charset_table,因此它是一个字符字符,然后启用前缀索引甚至中缀索引,然后可以执行

(成本|价格|费用)Near/6 $*

得到任何。虽然 toy 可能必须 post 过滤以防它捕获一些实际上不是数字的东西。