AnsweredAssumed Answered

Exact search with case insensitive

Question asked by spilby on Apr 23, 2015
Latest reply on Jun 23, 2015 by spilby
Hello everyone!

I'm using this expression to search a string custom property of my tree:


String query = "PATH: \"/" + myPath + "/cm:" + folder + "//.\"" + " AND TYPE:\"" + myType + "\""
             + " AND =@mod\\:" + myCustomProperty + ":\"" + searchValue + "\"";

SearchParameters sp = new SearchParameters();
sp.addStore(StoreRef.STORE_REF_WORKSPACE_SPACESSTORE);
sp.setLanguage(SearchService.LANGUAGE_FTS_ALFRESCO);
sp.setQuery(query);
ResultSet results = getSearchService().query(sp);


And I have this on my model.xml


   <namespace uri="myCustomNS" prefix="mod" />

   <property name="mod:myCustomProperty"  editVisible="true" createVisible="true" editable="true" inheritable="false" calculable="true">
      <title>My custom property</title>
      <type>d:text</type>
      <mandatory>true</mandatory>
      <index enabled="true">
         <atomic>true</atomic>
         <stored>false</stored>
         <tokenised>both</tokenised>
      </index>
      <constraints>
         <constraint ref="desal:stringLength100" />
      </constraints>
   </property>   


I use LANGUAGE_FTS_ALFRESCO instead of LANGUAGE_LUCENE because of the "=" operator in the search.

I need to find the exact phrase that I have on the value property.

The problem is that I don't want a case sensitive search. I want the results, with lower or upper case.

If I change the query and I put @mod\\: instead of =@mod\\: the search is case insensitive, like I want. But don't find with exact phrase. I need to use the "=" operator, but I need too the case insensitive search.

How can I do this search?

Thank you very much!

Outcomes