Class StringEscaper

  • All Implemented Interfaces:
    java.lang.Cloneable

    public class StringEscaper
    extends java.lang.Object
    implements java.lang.Cloneable

    StringEscaper is a utility for replacing special characters with escape sequences in strings. Initially, a StringEscaper starts out as an identity transform in the "mutable" state. Call defineEscape as many times as necessary to set up mappings, and then call makeImmutable() before using appendEscapedString to actually apply the defined transform. Or, use one of the global mappings pre-defined here.

    • Constructor Detail

      • StringEscaper

        public StringEscaper()
        Identity transform
    • Method Detail

      • defineEscape

        public void defineEscape​(char from,
                                 java.lang.String to)
        Map character "from" to escape sequence "to"
      • makeImmutable

        public void makeImmutable()
        Call this before attempting to escape strings; after this, defineEscape may not be called again.
      • escapeString

        public java.lang.String escapeString​(java.lang.String s)
        Apply an immutable transformation to the given string.
      • appendEscapedString

        public void appendEscapedString​(java.lang.String s,
                                        java.lang.StringBuffer sb)
        Apply an immutable transformation to the given string, writing the results to a string buffer.
      • clone

        protected java.lang.Object clone()
        Overrides:
        clone in class java.lang.Object
      • getMutableClone

        public StringEscaper getMutableClone()
        Create a mutable escaper from an existing escaper, which may already be immutable.