You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Benson Margulies (JIRA)" <ji...@apache.org> on 2013/05/01 20:44:16 UTC

[jira] [Created] (SOLR-4780) It would be helpful to have a function in SolrQuery to perform special character escaping as needed for q strings

Benson Margulies created SOLR-4780:
--------------------------------------

             Summary: It would be helpful to have a function in SolrQuery to perform special character escaping as needed for q strings
                 Key: SOLR-4780
                 URL: https://issues.apache.org/jira/browse/SOLR-4780
             Project: Solr
          Issue Type: New Feature
    Affects Versions: 4.0
            Reporter: Benson Margulies



Here's some code I found in a blog, IP uncertain, to explain the idea:

{noformat}

public static String escapeQueryCulprits(String s)
{
StringBuilder sb = new StringBuilder();
for (int i = 0; i < s.length(); i++)
{
char c = s.charAt(i);
// These characters are part of the query syntax and must be escaped
if (c == '\\' || c == '+' || c == '-' || c == '!' || c == '(' || c == ')' || c == ':'
|| c == '^' || c == '[' || c == ']' || c == '\"' || c == '{' || c == '}' || c == '~'
|| c == '*' || c == '?' || c == '|' || c == '&' || c == ';'
)
{
sb.append('\\');
}
if(Character.isWhitespace(c))
{
sb.append(" \\ ");
}
sb.append(c);
}
return sb.toString();
}
{noformat}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org