Unicode 标记逻辑中的特殊字符搜索

Unicode 标记逻辑中的特殊字符搜索,unicode,special-characters,marklogic,Unicode,Special Characters,Marklogic,我无法在marklogic中搜索带有特殊字符(?*)和数学符号(÷)等的内容 如果我使用÷搜索内容,则不会得到任何结果 localhost:9000/v1/search?q=divide÷&collection=Math&options=searchmath&format=xml 内容:divide÷ 我在元素中使用索引搜索,看起来marklogic没有索引÷符号 你知道为什么marklogic没有返回带有特殊字符的元素的正确响应吗?字符被索引为标点符号,也就是说,它根

我无法在marklogic中搜索带有特殊字符
(?*)
和数学符号
(÷)
等的内容 如果我使用
÷
搜索内容,则不会得到任何结果

localhost:9000/v1/search?q=divide÷&collection=Math&options=searchmath&format=xml
内容:
divide÷

我在元素中使用索引搜索,看起来marklogic没有索引
÷
符号


你知道为什么marklogic没有返回带有特殊字符的元素的正确响应吗?

字符被索引为标点符号,也就是说,它根本没有索引。如果查看tokenizer.xml,您可以看到各种字符范围中的字符分类,以便进行标记化。如果需要为该字符编制索引,可以在字段上定义

然而,在这种情况下,我希望出现误报,而不是误报。获取查询计划并确保角色正确地通过URL编码和REST等层可能很有用


至于
*
——这些都是通配符,因此您必须确保您的查询是未签卡的。同样,在非通配符查询中,这些是标点符号,没有索引——您只能通过执行过滤搜索或精确值查询来获得准确的搜索。

是否检查了搜索选项?除了mholstege指导的内容外,您还需要在正确的位置适当地设置术语选项,以区分标点符号。