Search 在Sphinx搜索中,如何添加;标签;去charset_桌子?

Search 在Sphinx搜索中,如何添加;标签;去charset_桌子?,search,unicode,utf-8,lucene,sphinx,Search,Unicode,Utf 8,Lucene,Sphinx,我希望人们能够搜索#摄影以及摄影。在狮身人面像中,这两个词应该被视为两个不同的词。默认情况下,#photography映射到photography,我无法搜索哈希标记 我读到您可以向charset_表中添加hash标记来完成这项工作。我完全不知道该怎么做。我不知道unicode,也不知道我的charset_表应该是什么 有人能告诉我我的charset_表应该是什么吗?谢谢 # charset_table = 0..9, A..Z->a..z, _, a..z, U+410..U+4

我希望人们能够搜索
#摄影
以及
摄影
。在狮身人面像中,这两个词应该被视为两个不同的词。默认情况下,
#photography
映射到
photography
,我无法搜索哈希标记

我读到您可以向charset_表中添加hash标记来完成这项工作。我完全不知道该怎么做。我不知道unicode,也不知道我的charset_表应该是什么

有人能告诉我我的charset_表应该是什么吗?谢谢

# charset_table     = 0..9, A..Z->a..z, _, a..z, U+410..U+42F->U+430..U+44F, U+430..U+44F

注意:我计划使用实时索引。(不确定这是否有区别)

根据Unicode表,这是
U+0023
。所以最终的配置应该是

charset_table     = 0..9, A..Z->a..z, _, a..z, U+23, U+410..U+42F->U+430..U+44F, U+430..U+44F
不要忘记
charset\u type
变量。好的,这个示例
charset\u表
用于
utf-8
。除此之外,您应该从
blend\U chars
变量中删除
U+23
,以允许Sphinx将其作为合法字符索引

我希望人们能够搜索摄影以及摄影。在狮身人面像中,这两个词应该被视为两个不同的词。默认情况下,#photography映射到photography,我无法搜索hashtags

你好

我认为这会解决你的问题,但是:

直接从用户查询调用搜索函数是一种不好的方法

在sphinx引擎中调用搜索函数之前,需要对用户字符串进行某种处理。 例如,您可以检查用户字符串中的某些特殊字符,并从查询中删除特殊字符。之后,您可以调用搜索功能进行查询


祝你好运。

谢谢你,保罗。整根绳子看起来像什么?我是否要在结尾加上逗号?不确定最终结果会是什么…更新并提供更多信息。除了当前的要求外,是否有任何方法可以让用户在搜索“摄影”时也返回“摄影”的结果?但并非相反……
expand_关键字
应该解决这个问题,尽管应该使用
infix搜索
而不是
前缀搜索
。我不知道它是否适用于特殊字符,例如哈希符号。