Refine search
public static String parsePath(String uri, Map<String, String> patterns) { if (uri == null) { return null; } else if (StringUtils.isBlank(uri)) { return String.valueOf(SLASH); } CharacterIterator ci = new StringCharacterIterator(uri); StringBuilder pathBuffer = new StringBuilder(); char c = ci.first(); if (c == CharacterIterator.DONE) { return String.valueOf(SLASH); } do { if (c == OPEN) { String regexBuffer = cutParameter(ci, patterns); if (regexBuffer == null) { LOGGER.warn("Operation path \"" + uri + "\" contains syntax error."); return null; } pathBuffer.append(regexBuffer); } else { int length = pathBuffer.length(); if (!(c == SLASH && (length != 0 && pathBuffer.charAt(length - 1) == SLASH))) { pathBuffer.append(c); } } } while ((c = ci.next()) != CharacterIterator.DONE); return pathBuffer.toString(); }
/** * Determine if the supplied name is a valid XML Name. * * @param name the string being checked * @return true if the supplied name is indeed a valid XML Name, or false otherwise */ public static boolean isValidName( String name ) { if (name == null || name.length() == 0) return false; CharacterIterator iter = new StringCharacterIterator(name); char c = iter.first(); if (!isValidNameStart(c)) return false; while (c != CharacterIterator.DONE) { if (!isValidName(c)) return false; c = iter.next(); } return true; }
/** * Determine if the supplied name is a valid XML NCName. * * @param name the string being checked * @return true if the supplied name is indeed a valid XML NCName, or false otherwise */ public static boolean isValidNcName( String name ) { if (name == null || name.length() == 0) return false; CharacterIterator iter = new StringCharacterIterator(name); char c = iter.first(); if (!isValidNcNameStart(c)) return false; while (c != CharacterIterator.DONE) { if (!isValidNcName(c)) return false; c = iter.next(); } return true; } }
/** * Returns a String de-escaping the <code>\\unnnn</code> representation for any escaped characters in the string. */ public static String getUnEscapedStringOf(String str) { StringBuffer buf = new StringBuffer(); CharacterIterator iter = new StringCharacterIterator(str); for (char ch = iter.first(); ch != CharacterIterator.DONE; ch = iter.next()) { if (ch != '\\') { buf.append(ch); } else { // enter escaped mode ch = iter.next(); char format; if (ch == '\\') { buf.append(ch); } else if ((format = getCFormatChar(ch)) != '\0') { buf.append(format); } else if (ch == 'u') { // enter unicode mode StringBuffer mini = new StringBuffer(4); for (int i = 0; i < 4; i++) { mini.append(iter.next()); } ch = (char) Integer.parseInt(mini.toString(), 16); buf.append(ch); } else { throw new RuntimeException("Unexpected char: " + ch); } } } return buf.toString(); }
StringBuilder s = new StringBuilder(token.length()); CharacterIterator it = new StringCharacterIterator(token); for (char ch = it.first(); ch != CharacterIterator.DONE; ch = it.next()) { switch (ch) { case '&': s.append("&"); break; case '<': s.append("<"); break; case '>': s.append(">"); break; default: s.append(ch); break; } } token = s.toString();
StringBuilder builder = new StringBuilder(input.length()); CharacterIterator iter = new StringCharacterIterator(input); for (char c = iter.first(); c != CharacterIterator.DONE; c = iter.next()) { switch (c) { case '\b': char next = iter.next(); if (next == CharacterIterator.DONE) { throw new IllegalArgumentException("invalid unicode string: unexpected high surrogate pair "
public static boolean containsEncodeableCharacters( String str ) { CharacterIterator iter = new StringCharacterIterator(str); for (char c = iter.first(); c != CharacterIterator.DONE; c = iter.next()) { if (c == '*' || c == '/' || c == ':' || c == '[' || c == ']' || c == '|') return true; } return false; }
/** * Convenience method to append all the characters in * <code>iterator</code> to the StringBuffer <code>result</code>. */ private void append(StringBuffer result, CharacterIterator iterator) { if (iterator.first() != CharacterIterator.DONE) { char aChar; result.append(iterator.first()); while ((aChar = iterator.next()) != CharacterIterator.DONE) { result.append(aChar); } } }
public static boolean containsEncodeableCharacters( String str ) { CharacterIterator iter = new StringCharacterIterator(str); for (char c = iter.first(); c != CharacterIterator.DONE; c = iter.next()) { if (c == '*' || c == '/' || c == ':' || c == '[' || c == ']' || c == '|') return true; } return false; }
/** * Convenience method to append all the characters in * <code>iterator</code> to the StringBuffer <code>result</code>. */ private void append(StringBuffer result, CharacterIterator iterator) { if (iterator.first() != CharacterIterator.DONE) { char aChar; result.append(iterator.first()); while ((aChar = iterator.next()) != CharacterIterator.DONE) { result.append(aChar); } } }
public static boolean containsEncodeableCharacters( String str ) { CharacterIterator iter = new StringCharacterIterator(str); for (char c = iter.first(); c != CharacterIterator.DONE; c = iter.next()) { if (c == '*' || c == '/' || c == ':' || c == '[' || c == ']' || c == '|') return true; } return false; }