private static boolean needsEscape(String value) { if (value.length() > 0 && value.charAt(0) == '\"') return false; final StringCharacterIterator iterator = new StringCharacterIterator(value); for (char ch = iterator.current(); ch != CharacterIterator.DONE; ch = iterator.next()) { if (!Character.isJavaIdentifierPart(ch) && ch != '-') { return true; } } return false; }
public static String escape(String input) { if (input == null) { return null; } StringBuilder result = new StringBuilder(); StringCharacterIterator iterator = new StringCharacterIterator(input); char character = iterator.current(); while (character != CharacterIterator.DONE) { if (character == '<') { result.append("<"); } else if (character == '>') { result.append(">"); } else if (character == '\"') { result.append("""); } else if (character == '\'') { result.append("'"); } else if (character == '&') { result.append("&"); } else { result.append(character); } character = iterator.next(); } return result.toString(); } }
private static String escapeString(String value) { if (needsEscape(value)) { final StringBuilder result = new StringBuilder(); result.append('\"'); final StringCharacterIterator iterator = new StringCharacterIterator(value); for (char ch = iterator.current(); ch != CharacterIterator.DONE; ch = iterator.next()) { if (ch == '\"' || ch == '\'' || ch == '{' || ch == '}' || ch == '[' || ch == ']') { result.append('\\'); result.append(ch); } else if (ch < ' ' || ch > '~') { result.append("\\\\u"); String hex = "0000" + Integer.toHexString((int)ch); hex = hex.substring(hex.length() - 4); result.append(hex); } else { result.append(ch); } } result.append('\"'); value = result.toString(); } return value; }
public static String escape(String input) { if (input == null) { return null; } StringBuilder result = new StringBuilder(); StringCharacterIterator iterator = new StringCharacterIterator(input); char character = iterator.current(); while (character != CharacterIterator.DONE) { if (character == '<') { result.append("<"); } else if (character == '>') { result.append(">"); } else if (character == '\"') { result.append("""); } else if (character == '\'') { result.append("'"); } else if (character == '&') { result.append("&"); } else { result.append(character); } character = iterator.next(); } return result.toString(); } }
final StringBuilder result = new StringBuilder(); StringCharacterIterator iterator = new StringCharacterIterator(aText); char character = iterator.current(); while (character != StringCharacterIterator.DONE) { if (character == '\"') {
final StringBuilder result = new StringBuilder(); final StringCharacterIterator iterator = new StringCharacterIterator(aText); char character = iterator.current(); while (character != CharacterIterator.DONE) { if (character == '<') {
boolean hasMoreChars() { return( mIter.current() != mIter.DONE ); }
public char first() { pos = begin; return current(); }
public char last() { pos = (end != begin) ? (end - 1) : end; return current(); }
boolean hasMoreChars() { return (mIter.current() != StringCharacterIterator.DONE); }
char nextChar() { final char theChar = mIter.current(); mIter.next(); return( theChar ); }
public char setIndex(int p) { if (p < begin || p > end) JTranscExceptions.invalidIndex(); pos = p; return current(); }
char nextChar() { final char theChar = mIter.current(); mIter.next(); return (theChar); } private static final char QUOTE_CHAR = '\"';
private void gobbleSingleLineComment( StringCharacterIterator sci ) { for ( char c = sci.current(); c != EOF; c = sci.next() ) { switch( c ) { case NEWLINE: return; } } } // this is called when a token starts with SLASH-STAR
private void gobbleWhiteSpace( StringCharacterIterator sci ) { for ( char c = sci.current(); c != EOF; c = sci.next() ) { switch( c ) { case SPACE : case FORMFEED: case NEWLINE : case RETURN : case TAB : break; default : return; } } } // this is called when a token starts with a delimiter character
private static boolean needsEscape(String value) { if (value.length() > 0 && value.charAt(0) == '\"') return false; final StringCharacterIterator iterator = new StringCharacterIterator(value); for (char ch = iterator.current(); ch != CharacterIterator.DONE; ch = iterator.next()) { if (!Character.isJavaIdentifierPart(ch) && ch != '-') { return true; } } return false; }
private Vector getTokens( String text ) { if ( text == null ) return null; Vector tokens = new Vector(); StringCharacterIterator sci = new StringCharacterIterator( text ); while ( sci.current() != EOF ) { String token = nextToken( sci ); if ( token != null ) { tokens.add( token ); } //Log.getLogWriter().finest( "index:" + sci.getIndex() + " TOKEN:" + token ); } return tokens; } private StringBuffer token = new StringBuffer(100);
public static String backlashReplace(String myStr){ final StringBuilder result = new StringBuilder(); final StringCharacterIterator iterator = new StringCharacterIterator(myStr); char character = iterator.current(); while (character != CharacterIterator.DONE ){ if (character == '\\') { result.append("/"); } else { result.append(character); } character = iterator.next(); } return result.toString(); }
public static void main(String[] args) { String before = "test\ntest1\n"; final StringBuilder result = new StringBuilder(); final StringCharacterIterator iterator = new StringCharacterIterator(before); char character = iterator.current(); while (character != CharacterIterator.DONE ){ // do whatever you want to do with the char... I am just removing the \n if (character == '\n') { character = iterator.next(); } else { result.append(character); } character = iterator.next(); } System.out.println(result.toString()); }
private void matchDelimiter( StringCharacterIterator sci, StringBuffer token ) { char c = sci.current(); switch( c ) { case PLUS : char cnext= sci.next(); switch( cnext) { case EQUALS : token.append( c ); token.append( cnext ); sci.next(); break; default : sci.previous(); matchValue( sci, token ); } break; default : token.append( c ); sci.next(); } } // this is called when a token starts with QUOTE