You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-commits@lucene.apache.org by ko...@apache.org on 2008/10/07 07:51:32 UTC

svn commit: r702355 - in /lucene/solr/trunk/client/java/solrj: CHANGES.txt src/org/apache/solr/client/solrj/util/ClientUtils.java

Author: koji
Date: Mon Oct  6 22:51:31 2008
New Revision: 702355

URL: http://svn.apache.org/viewvc?rev=702355&view=rev
Log:
SOLR-794: revert ClientUtils with Character.isWhitespace(c)

Modified:
    lucene/solr/trunk/client/java/solrj/CHANGES.txt
    lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/util/ClientUtils.java

Modified: lucene/solr/trunk/client/java/solrj/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/CHANGES.txt?rev=702355&r1=702354&r2=702355&view=diff
==============================================================================
--- lucene/solr/trunk/client/java/solrj/CHANGES.txt (original)
+++ lucene/solr/trunk/client/java/solrj/CHANGES.txt Mon Oct  6 22:51:31 2008
@@ -18,8 +18,6 @@
 New Features
 ----------------------
 
- 1. SOLR-794: added escape() method to ClientUtils. (koji) 
-
 Optimizations
 ----------------------
 
@@ -34,6 +32,9 @@
     SolrQuery#getHighlightRequireFieldMatch()
     (Kohei Taketa, Lars Kotthoff via koji)
 
+ 3. SOLR-794: ClientUtils.escapeQueryChars escapes chars a bit aggressive
+    (ryan, koji)
+
 Documentation
 ----------------------
 

Modified: lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/util/ClientUtils.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/util/ClientUtils.java?rev=702355&r1=702354&r2=702355&view=diff
==============================================================================
--- lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/util/ClientUtils.java (original)
+++ lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/util/ClientUtils.java Mon Oct  6 22:51:31 2008
@@ -187,29 +187,19 @@
       return (DateFormat) proto.clone();
     }
   }
-  
-  private static final Pattern escapePattern = Pattern.compile( "(\\W)" );
-  
-  /**
-   * Non-word characters are escaped by a preceding <code>\</code>.
-   */
-  public static String escapeQueryChars( String input ) 
-  {
-    Matcher matcher = escapePattern.matcher( input );
-    return matcher.replaceAll( "\\\\$1" );
-  }
 
   /**
    * See: http://lucene.apache.org/java/docs/queryparsersyntax.html#Escaping Special Characters
    */
-  public static String escape(String s) {
+  public static String escapeQueryChars(String s) {
     StringBuffer sb = new StringBuffer();
     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 == '*' || c == '?' || c == '|' || c == '&'
+        || Character.isWhitespace(c)) {
         sb.append('\\');
       }
       sb.append(c);