Class NumericEntityUnescaper
java.lang.Object
org.apache.commons.text.translate.CharSequenceTranslator
org.apache.commons.text.translate.NumericEntityUnescaper
public class NumericEntityUnescaper extends CharSequenceTranslator
Translate XML numeric entities of the form &#[xX]?\d+;? to
the specific codepoint.
Note that the semi-colon is optional.
- Since:
- 1.0
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
NumericEntityUnescaper.OPTION
NumericEntityUnescaper option enum. -
Constructor Summary
Constructors Constructor Description NumericEntityUnescaper(NumericEntityUnescaper.OPTION... options)
Create a UnicodeUnescaper. -
Method Summary
Modifier and Type Method Description boolean
isSet(NumericEntityUnescaper.OPTION option)
Whether the passed in option is currently set.int
translate(CharSequence input, int index, Writer out)
Translate a set of codepoints, represented by an int index into a CharSequence, into another set of codepoints.Methods inherited from class org.apache.commons.text.translate.CharSequenceTranslator
hex, translate, translate, with
-
Constructor Details
-
NumericEntityUnescaper
Create a UnicodeUnescaper. The constructor takes a list of options, only one type of which is currently available (whether to allow, error or ignore the semi-colon on the end of a numeric entity to being missing). For example, to support numeric entities without a ';': new NumericEntityUnescaper(NumericEntityUnescaper.OPTION.semiColonOptional) and to throw an IllegalArgumentException when they're missing: new NumericEntityUnescaper(NumericEntityUnescaper.OPTION.errorIfNoSemiColon) Note that the default behavior is to ignore them.- Parameters:
options
- to apply to this unescaper
-
-
Method Details
-
isSet
Whether the passed in option is currently set.- Parameters:
option
- to check state of- Returns:
- whether the option is set
-
translate
Translate a set of codepoints, represented by an int index into a CharSequence, into another set of codepoints. The number of codepoints consumed must be returned, and the only IOExceptions thrown must be from interacting with the Writer so that the top level API may reliably ignore StringWriter IOExceptions.- Specified by:
translate
in classCharSequenceTranslator
- Parameters:
input
- CharSequence that is being translatedindex
- int representing the current point of translationout
- Writer to translate the text to- Returns:
- int count of codepoints consumed
- Throws:
IOException
- if and only if the Writer produces an IOException
-