Lucene只在露天查询Exact属性匹配

Dee*_*ape 0 lucene alfresco alfresco-share

我使用下面的查询来搜索文档.我的第一个查询是=

TYPE:"hr:hrdoctype" AND @cm\:name:"E1"
Run Code Online (Sandbox Code Playgroud)

我的第二个问题是=

TYPE:"hr:hrdoctype" AND @cm\:name:"E2"
Run Code Online (Sandbox Code Playgroud)

这给出了正确的结果.

但是有一个问题,如果我会使用

TYPE:"hr:hrdoctype" AND @cm\:name:"E"
Run Code Online (Sandbox Code Playgroud)

然后,它显示两条记录是E1E2.但我没有任何姓名记录E.那么有没有完全匹配?

在这里,我的要求是如果我用名称搜索E it不应该显示任何记录.只有在完全匹配时才会显示记录.

任何人都可以帮我解决这个问题吗?

我认为这是因为它被标记alfresco为全文搜索.但我的要求是不同的.

我在用 alfresco 5.0.d

请提供一种方法.

提前致谢.

Tah*_*lik 6

有一种方法可以做一个'完全匹配',看看这里.

例如,在您的情况下,它看起来像:

TYPE:"hr:hrdoctype" AND =@cm\:name:"E"
Run Code Online (Sandbox Code Playgroud)

务必使用FTS进行搜索,以便知道确切的搜索匹配.在javascript中它看起来像:

var query = "TYPE:\"hr:hrdoctype\" AND =@cm\\:name:\"E\";
var def = {
       query: query ,
       language: "fts-alfresco" 
};
var results = search.query(def);
Run Code Online (Sandbox Code Playgroud)