Xquery cts:近查询不使用特殊字符
我有一份文件,内容为Xquery cts:近查询不使用特殊字符,xquery,marklogic,Xquery,Marklogic,我有一份文件,内容为42 case§100 我正在使用一个近似查询进行搜索,因为我的要求是使用它。当我使用下面的查询时,这不起作用 cts:search( //word, cts:near-query( ( cts:word-query("42", ("case-insensitive","diacritic-insensitive","punctuation-insensitive","lang=en"), 1), cts:word-query("c
42 case§100
我正在使用一个近似查询进行搜索,因为我的要求是使用它。当我使用下面的查询时,这不起作用
cts:search(
//word,
cts:near-query(
(
cts:word-query("42", ("case-insensitive","diacritic-insensitive","punctuation-insensitive","lang=en"), 1),
cts:word-query("case", ("case-insensitive","diacritic-insensitive","punctuation-insensitive","lang=en"), 1),
cts:word-query("§", ("case-insensitive","diacritic-insensitive","punctuation-insensitive","lang=en"), 1),
cts:word-query("1*", ("case-insensitive","diacritic-insensitive","punctuation-insensitive","lang=en"), 1)
),
2,
("ordered"),
1
)
)
当我使用“§1*”
而不是将它们分开时,同样的方法也适用。在这种情况下,我认为您的距离(第三个参数)太小。距离是所有子查询之间的距离,因此在查找4个有序术语时,需要3个距离
嗯 §是不包含在单词索引中的标点符号。您可以通过使用自定义标记化覆盖来更改这一点。有关详细信息,请参阅。更改距离无效。我把它用于其他值而不是§Doh,我必须查找$而不是§。我可能弄错了,但我认为距离在这里也应该是相关的。您是否启用了位置?否则,在未筛选的情况下运行时,near query的行为类似于and query。