Class Whitespace

java.lang.Object
net.sf.saxon.value.Whitespace

public class Whitespace extends Object
This class provides helper methods and constants for handling whitespace
  • Field Details

    • PRESERVE

      public static final int PRESERVE
      The values PRESERVE, REPLACE, and COLLAPSE represent the three options for whitespace normalization. They are deliberately chosen in ascending strength order; given a number of whitespace facets, only the strongest needs to be carried out. The option TRIM is used instead of COLLAPSE when all valid values have no interior whitespace; trimming leading and trailing whitespace is then equivalent to the action of COLLAPSE, but faster.
      See Also:
    • REPLACE

      public static final int REPLACE
      See Also:
    • COLLAPSE

      public static final int COLLAPSE
      See Also:
    • TRIM

      public static final int TRIM
      See Also:
    • NONE

      public static final int NONE
      The values NONE, IGNORABLE, and ALL identify which kinds of whitespace text node should be stripped when building a source tree. UNSPECIFIED indicates that no particular request has been made. XSLT indicates that whitespace should be stripped as defined by the xsl:strip-space and xsl:preserve-space declarations in the stylesheet
      See Also:
    • IGNORABLE

      public static final int IGNORABLE
      See Also:
    • ALL

      public static final int ALL
      See Also:
    • UNSPECIFIED

      public static final int UNSPECIFIED
      See Also:
    • XSLT

      public static final int XSLT
      See Also:
  • Method Details

    • isWhitespace

      public static boolean isWhitespace(int ch)
      Test whether a character is whitespace
      Parameters:
      ch - the character (Unicode codepoint) to be tested
      Returns:
      true if the character is one of tab, newline, carriage return, or space
    • applyWhitespaceNormalization

      public static CharSequence applyWhitespaceNormalization(int action, CharSequence value)
      Apply schema-defined whitespace normalization to a string
      Parameters:
      action - the action to be applied: one of PRESERVE, REPLACE, or COLLAPSE
      value - the value to be normalized
      Returns:
      the value after normalization
    • removeAllWhitespace

      public static CharSequence removeAllWhitespace(CharSequence value)
      Remove all whitespace characters from a string
      Parameters:
      value - the string from which whitespace is to be removed
      Returns:
      the string without its whitespace. This may be the original value if it contained no whitespace
    • removeLeadingWhitespace

      public static CharSequence removeLeadingWhitespace(CharSequence value)
      Remove leading whitespace characters from a string
      Parameters:
      value - the string whose leading whitespace is to be removed
      Returns:
      the string with leading whitespace removed. This may be the original string if there was no leading whitespace
    • containsWhitespace

      public static boolean containsWhitespace(CharSequence value)
      Determine if a string contains any whitespace
      Parameters:
      value - the string to be tested
      Returns:
      true if the string contains a character that is XML whitespace, that is tab, newline, carriage return, or space
    • isWhite

      public static boolean isWhite(CharSequence content)
      Determine if a string is all-whitespace
      Parameters:
      content - the string to be tested
      Returns:
      true if the supplied string contains no non-whitespace characters
    • isWhite

      public static boolean isWhite(char c)
      Determine if a character is whitespace
      Parameters:
      c - the character to be tested
      Returns:
      true if the character is a whitespace character
    • normalizeWhitespace

      public static CharSequence normalizeWhitespace(CharSequence in)
      Normalize whitespace as defined in XML Schema. Note that this is not the same as the XPath normalize-space() function, which is supported by the collapseWhitespace(java.lang.CharSequence) method
      Parameters:
      in - the string to be normalized
      Returns:
      a copy of the string in which any whitespace character is replaced by a single space character
    • collapseWhitespace

      public static CharSequence collapseWhitespace(CharSequence in)
      Collapse whitespace as defined in XML Schema. This is equivalent to the XPath normalize-space() function
      Parameters:
      in - the string whose whitespace is to be collapsed
      Returns:
      the string with any leading or trailing whitespace removed, and any internal sequence of whitespace characters replaced with a single space character.
    • trimWhitespace

      public static CharSequence trimWhitespace(CharSequence in)
      Remove leading and trailing whitespace. This has the same effect as collapseWhitespace, but is cheaper, for use by data types that do not allow internal whitespace.
      Parameters:
      in - the input string whose whitespace is to be removed
      Returns:
      the result of removing excess whitespace
    • trim

      public static String trim(CharSequence s)
      Trim leading and trailing whitespace from a string, returning a string. This differs from the Java trim() method in that the only characters treated as whitespace are space, \n, \r, and \t. The String#trim() method removes all C0 control characters (which is not the same thing under XML 1.1).
      Parameters:
      s - the string to be trimmed. If null is supplied, null is returned.
      Returns:
      the string with leading and trailing whitespace removed. Returns null if and only if the supplied argument is null.