public class HtmlUtils
extends java.lang.Object
htmlUtils
.Modifier and Type | Class and Description |
---|---|
static class |
HtmlUtils.IndexPair |
Modifier and Type | Method and Description |
---|---|
static java.lang.String |
combineTextWithExceptionInfo(java.lang.String text,
java.lang.Exception ex) |
static java.lang.String |
element(java.lang.String name,
java.util.Map<java.lang.String,java.lang.String> attributes,
java.lang.String content) |
static java.lang.String |
element(java.lang.String name,
java.lang.String content) |
static int |
endOfText(java.lang.String html) |
static java.lang.String |
extractRawBody(java.lang.String text) |
static javax.swing.text.Element |
getCurrentLinkElement(javax.swing.text.html.HTMLDocument doc,
int pos) |
static HtmlUtils |
getInstance() |
static int |
getMaximalOriginalPosition(int pI,
java.util.ArrayList<HtmlUtils.IndexPair> pListOfIndices) |
static int |
getMinimalOriginalPosition(int pI,
java.util.ArrayList<HtmlUtils.IndexPair> pListOfIndices) |
static java.lang.String |
getReplaceResult(java.util.regex.Pattern pattern,
java.lang.String text,
java.lang.String replacement)
Replaces text in node content without replacing tags.
|
static java.lang.String |
getURLOfExistingLink(javax.swing.text.html.HTMLDocument doc,
int pos)
Gets the string URL of an existing link, or null if none.
|
static java.lang.String |
htmlToPlain(java.lang.String text)
equivalent to htmlToPlain(text, strictHTMLOnly=true, removeNewLines=true)
|
static java.lang.String |
htmlToPlain(java.lang.String text,
boolean strictHTMLOnly)
equivalent to htmlToPlain(text, strictHTMLOnly, removeNewLines=true)
|
static java.lang.String |
htmlToPlain(java.lang.String text,
boolean strictHTMLOnly,
boolean removeNewLines)
removes html markup and entities, partly and where appropriate by replacing it by plaintext equivalents like
<li> → '*'.
|
static boolean |
isEmpty(java.lang.String newText) |
static boolean |
isHtmlNode(java.lang.String text) |
static boolean |
isWellformedXml(java.lang.String xml) |
static java.lang.String |
join(java.lang.String... texts)
Join arbitrary texts to html.
|
static java.lang.String |
plainToHTML(java.lang.String text)
transforms
&, <, >, \n and whitespace by their HTML counterpart and
encloses the whole text in {@code |
static java.lang.String |
removeAllTagsFromString(java.lang.String text) |
static java.lang.String |
removeHtmlTagsFromString(java.lang.String text)
Removes all tags (<..>) from a string if it starts with "<html>..." to
make it compareable.
|
static java.lang.String |
toHtml(java.lang.String xhtmlText) |
static java.lang.String |
toHTMLEscapedText(java.lang.String s) |
static java.lang.String |
toXhtml(java.lang.String htmlText) |
static java.lang.String |
toXMLEscapedText(java.lang.String text) |
static java.lang.String |
toXMLEscapedTextExpandingWhitespace(java.lang.String text) |
static java.lang.String |
toXMLUnescapedText(java.lang.String text) |
static java.lang.String |
unescapeHTMLUnicodeEntity(java.lang.String text) |
static java.lang.String |
unicodeToHTMLUnicodeEntity(java.lang.String text) |
public static HtmlUtils getInstance()
public static java.lang.String htmlToPlain(java.lang.String text)
htmlToPlain(String, boolean, boolean)
public static java.lang.String htmlToPlain(java.lang.String text, boolean strictHTMLOnly)
htmlToPlain(String, boolean, boolean)
public static java.lang.String htmlToPlain(java.lang.String text, boolean strictHTMLOnly, boolean removeNewLines)
strictHTMLOnly
- if true does nothing unless the text starts with <html>removeNewLines
- set to false to keep all blank lines.public static boolean isHtmlNode(java.lang.String text)
public static java.lang.String plainToHTML(java.lang.String text)
&, <, >, \n
and whitespace by their HTML counterpart and
encloses the whole text in <html><body><p>...</p></body></html>
.public static java.lang.String removeAllTagsFromString(java.lang.String text)
public static java.lang.String removeHtmlTagsFromString(java.lang.String text)
public static java.lang.String toXMLEscapedText(java.lang.String text)
public static java.lang.String toXMLEscapedTextExpandingWhitespace(java.lang.String text)
public static java.lang.String toXMLUnescapedText(java.lang.String text)
public static java.lang.String unescapeHTMLUnicodeEntity(java.lang.String text)
public static java.lang.String unicodeToHTMLUnicodeEntity(java.lang.String text)
public static int getMaximalOriginalPosition(int pI, java.util.ArrayList<HtmlUtils.IndexPair> pListOfIndices)
public static int getMinimalOriginalPosition(int pI, java.util.ArrayList<HtmlUtils.IndexPair> pListOfIndices)
public static java.lang.String getReplaceResult(java.util.regex.Pattern pattern, java.lang.String text, java.lang.String replacement)
public static boolean isWellformedXml(java.lang.String xml)
public static java.lang.String toHtml(java.lang.String xhtmlText)
public static java.lang.String toXhtml(java.lang.String htmlText)
public static int endOfText(java.lang.String html)
public static java.lang.String combineTextWithExceptionInfo(java.lang.String text, java.lang.Exception ex)
public static java.lang.String element(java.lang.String name, java.lang.String content)
public static java.lang.String element(java.lang.String name, java.util.Map<java.lang.String,java.lang.String> attributes, java.lang.String content)
public static java.lang.String extractRawBody(java.lang.String text)
public static java.lang.String getURLOfExistingLink(javax.swing.text.html.HTMLDocument doc, int pos)
public static javax.swing.text.Element getCurrentLinkElement(javax.swing.text.html.HTMLDocument doc, int pos)
public static boolean isEmpty(java.lang.String newText)
public static java.lang.String toHTMLEscapedText(java.lang.String s)
public static java.lang.String join(java.lang.String... texts)
plainToHTML(String)
, i.e. newlines and other special characters will
be translated to their HTML counterpart and wrapped in a paragraph (<p></p>).
// plain + html -> <html><body><p>text1</p>text2</body></html>
HtmlUtils.join("text1", "", "<html><body>text2</body></html>");
// insert an empty paragraph (<p></p>) between two strings:
HtmlUtils.join("text1", "", "text2");
// this will insert two paragraphs:
HtmlUtils.join("text1", "\n", "text2");
texts
- either html (starting with <HTML> or <html>) or plain text.