Minor performance improvement. Use the char version of StringBuffer.append() and String.indexOf().
diff --git a/src/org/apache/xalan/lib/ExsltDatetime.java b/src/org/apache/xalan/lib/ExsltDatetime.java
index e933f53..d53b27d 100644
--- a/src/org/apache/xalan/lib/ExsltDatetime.java
+++ b/src/org/apache/xalan/lib/ExsltDatetime.java
@@ -87,7 +87,7 @@
       // If there is no offset, we have "Coordinated
       // Universal Time."
       if (offset == 0)
-        buff.append("Z");
+        buff.append('Z');
       else
       {
         // Convert milliseconds to hours and minutes
@@ -818,7 +818,7 @@
      */
     private static int getZoneStart (String datetime)
     {
-      if (datetime.indexOf("Z") == datetime.length()-1)
+      if (datetime.indexOf('Z') == datetime.length()-1)
         return datetime.length()-1;
       else if (datetime.length() >=6 
       		&& datetime.charAt(datetime.length()-3) == ':'
@@ -1083,7 +1083,6 @@
      */
     private static String strip(String symbols, String pattern)
     {
-        int quoteSemaphore = 0;
         int i = 0;
         StringBuffer result = new StringBuffer(pattern.length());
 
@@ -1092,7 +1091,7 @@
             char ch = pattern.charAt(i);
             if (ch == '\'')
             {
-                // Assume it's an openening quote so simply copy the quoted 
+                // Assume it's an opening quote so simply copy the quoted 
                 // text to the result. There is nothing to strip here.
                 int endQuote = pattern.indexOf('\'', i + 1);
                 if (endQuote == -1)