In our application, user may search error code like 12:34. We define default search field, like: <str name="qf">title^10 body_stored^8 content^5</str> So when user search: 12:34, we want to search the error code in the specified fields.
In the code, if we search q=12:34 directly, this can't find anything. It's expected as it'ss to search 34 on 12 field. Then we try to escape the colon, search: 12\:34, the parsedquery would be +12\:34, still can't find the expected page. <str name="parsedquery">(+12\:34)/no_coord</str> <str name="parsedquery_toString">+12\:34</str> <str name="QParser">ExtendedDismaxQParser</str> If I type 2 \\, seems it can find the error page: q=12\\:34 <str name="parsedquery"> (+DisjunctionMaxQuery((content:"12 34"^0.5 | body_stored:"(12\:34 12) 34"^0.8 | title:"12 34"^1.1)))/no_coord </str> <str name="parsedquery_toString"> +(content:"12 34"^0.5 | body_stored:"(12\:34 12) 34"^0.8 | title:"12 34"^1.1) </str> <str name="QParser">ExtendedDismaxQParser</str> Is this a bug in Solr edismax or not? -- View this message in context: http://lucene.472066.n3.nabble.com/The-way-edismax-parses-colon-seems-weird-tp4079226.html Sent from the Solr - User mailing list archive at Nabble.com.