Package net.sf.saxon.value
Class Whitespace
java.lang.Object
net.sf.saxon.value.Whitespace
This class provides helper methods and constants for handling whitespace
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
static final int
static final int
static final int
The values NONE, IGNORABLE, and ALL identify which kinds of whitespace text node should be stripped when building a source tree.static final int
The values PRESERVE, REPLACE, and COLLAPSE represent the three options for whitespace normalization.static final int
static final int
static final int
-
Method Summary
Modifier and TypeMethodDescriptionstatic CharSequence
applyWhitespaceNormalization
(int action, CharSequence value) Apply schema-defined whitespace normalization to a stringstatic CharSequence
Collapse whitespace as defined in XML Schema.static boolean
containsWhitespace
(CharSequence value) Determine if a string contains any whitespacestatic boolean
isWhite
(CharSequence content) Determine if a string is all-whitespacestatic boolean
isWhitespace
(int ch) Test whether a character is whitespacestatic CharSequence
Normalize whitespace as defined in XML Schema.static CharSequence
removeAllWhitespace
(CharSequence value) Remove all whitespace characters from a stringstatic CharSequence
Remove leading whitespace characters from a stringstatic String
trim
(CharSequence s) Trim leading and trailing whitespace from a string, returning a string.static CharSequence
Remove leading and trailing whitespace.
-
Field Details
-
PRESERVE
public static final int PRESERVEThe 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.- See Also:
-
REPLACE
public static final int REPLACE- See Also:
-
COLLAPSE
public static final int COLLAPSE- See Also:
-
NONE
public static final int NONEThe 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
Apply schema-defined whitespace normalization to a string- Parameters:
action
- the action to be applied: one of PRESERVE, REPLACE, or COLLAPSEvalue
- the value to be normalized- Returns:
- the value after normalization
-
removeAllWhitespace
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
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
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
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
-
normalizeWhitespace
Normalize whitespace as defined in XML Schema. Note that this is not the same as the XPath normalize-space() function, which is supported by thecollapseWhitespace(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
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
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
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.
-