Well I tried a # of solutions that did not work:
I added regexp_ in the config to map ?=>qmark and *=>asterisk. I had no luck with this regardless of how I searched i.e. Includes sidesqmark and Includes sides qmark (latter assuming ? treated as separate work
I commented the regexp back out and tried searching on Includes Sides No on the logic that ? and * are not being indexed so those spaces don't exist.
I added spaced between Includes sides and No assuming that one or more of the chars was not indexing but somehow taking up a char space e.g. Includes sides No.
I added double escapes as was suggested to me `"Includes sides\?\*\* \*No" which failed too.
None of these worked.
I tried doing NEAR/ and >> together and that worked:
("Includes sides" NEAR/2 "No") ("Includes sides" >> "No")
which seemed clunky.
Finally I did this which worked
"Includes sides \\*"No"
Which works but is a total mystery to me why though I am posting it since it solves the problem. I'm hoping someone else can explain the mechanisms behind this:
- Clearly the
\\ is the right way to escape in sphinxql
- Clearly escaping the asterisk is working
- Clearly escaping the
? is not
- Yet if the asterisk needs to be escaped then how come:
"Includes sides\\?\\*\\* \\*No
does not work AND
"Includes sides\\*\\* \\*No
does not work? If it is not indexing/recognizing the ? but clearly is the * then I'd need to escape the two after Includes. Yet it is as if neither the ? nor the * after Includes exist BUT the asterisk before No does.
Sorry to include a question an answer yet my solution worked. If there is a better way for me to both provide the solution I used and the question that it revealed please let me know as I'm trying not to confuse the issue here.