freemarker.template.utility
public class StringUtil extends Object
Constructor and Description |
---|
StringUtil() |
Modifier and Type | Method and Description |
---|---|
static String |
capitalize(String s) |
static String |
chomp(String s)
Removes the line-break from the end of the string.
|
static Locale |
deduceLocale(String input) |
static String |
FTLStringLiteralDec(String s)
FTL string literal decoding.
|
static String |
FTLStringLiteralEnc(String s) |
static boolean |
getYesNo(String s) |
static String |
HTMLEnc(String s)
HTML encoding (does not convert line breaks).
|
static boolean |
isXMLID(String name) |
static String |
javaScriptStringEnc(String s)
Escapes a
String according the JavaScript string literal
escaping rules. |
static String |
javaStringEnc(String s)
Escapes the
String with the escaping rules of Java language
string literals, so it is safe to insert the value into a string literal. |
static String |
jQuote(Object obj)
|
static String |
jQuote(String s)
Quotes string as Java Language string literal.
|
static String |
jQuoteNoXSS(Object obj)
|
static String |
jQuoteNoXSS(String s)
|
static String |
leftPad(String s,
int minLength)
Pads the string at the left with spaces until it reaches the desired
length.
|
static String |
leftPad(String s,
int minLength,
char filling)
Pads the string at the left with the specified character until it reaches
the desired length.
|
static String |
leftPad(String s,
int minLength,
String filling)
Pads the string at the left with a filling pattern until it reaches the
desired length.
|
static boolean |
matchesName(String qname,
String nodeName,
String nsURI,
Environment env) |
static Map |
parseNameValuePairList(String s,
String defaultValue)
Parses a name-value pair list, where the pairs are separated with comma,
and the name and value is separated with colon.
|
static String |
replace(String text,
String oldsub,
String newsub,
boolean caseInsensitive,
boolean firstOnly)
Replaces all occurrences of a sub-string in a string.
|
static String |
rightPad(String s,
int minLength)
Pads the string at the right with spaces until it reaches the desired
length.
|
static String |
rightPad(String s,
int minLength,
char filling)
Pads the string at the right with the specified character until it
reaches the desired length.
|
static String |
rightPad(String s,
int minLength,
String filling)
Pads the string at the right with a filling pattern until it reaches the
desired length.
|
static String |
RTFEnc(String s)
Rich Text Format encoding (does not replace line breaks).
|
static String[] |
split(String s,
char c)
Splits a string at the specified character.
|
static String[] |
split(String s,
String sep,
boolean caseInsensitive)
Splits a string at the specified string.
|
static String |
URLEnc(String s,
String charset)
URL encoding (like%20this).
|
static String |
XHTMLEnc(String s)
XHTML Encoding.
|
static String |
XMLEnc(String s)
XML Encoding.
|
static String |
XMLEncNA(String s)
XML encoding without replacing apostrophes.
|
static String |
XMLEncNQG(String s)
XML encoding without replacing apostrophes and quotation marks and
greater-thans (except in
]]> ). |
static String |
XMLEncQAttr(String s)
XML encoding for attributes valies quoted with " (not with '!).
|
public static String HTMLEnc(String s)
public static String XMLEnc(String s)
public static String XHTMLEnc(String s)
public static String XMLEncNA(String s)
XMLEnc(String)
public static String XMLEncQAttr(String s)
XMLEnc(String)
public static String XMLEncNQG(String s)
]]>
).XMLEnc(String)
public static String RTFEnc(String s)
public static String URLEnc(String s, String charset) throws UnsupportedEncodingException
UnsupportedEncodingException
public static String FTLStringLiteralDec(String s) throws ParseException
s
- String literal without the surrounding quotation marksParseException
- if there string contains illegal escapespublic static boolean getYesNo(String s)
public static String[] split(String s, String sep, boolean caseInsensitive)
public static String replace(String text, String oldsub, String newsub, boolean caseInsensitive, boolean firstOnly)
text
- The string where it will replace oldsub
with
newsub
.public static String jQuote(String s)
"null"
if s
is null
.public static String jQuoteNoXSS(String s)
jQuoteNoXSS(String)
but also escapes '<'
as <
. This is used for log messages to prevent XSS
on poorly written Web-based log viewers.public static String javaStringEnc(String s)
String
with the escaping rules of Java language
string literals, so it is safe to insert the value into a string literal.
The resulting string will not be quoted.
In additional, all characters under UCS code point 0x20, that has no dedicated escape sequence in Java language, will be replaced with UNICODE escape (\uXXXX).
jQuote(String)
public static String javaScriptStringEnc(String s)
String
according the JavaScript string literal
escaping rules. The resulting string will not be quoted.
It escapes both ' and ". In additional it escapes > as \> (to avoid </script>). Furthermore, all characters under UCS code point 0x20, that has no dedicated escape sequence in JavaScript language, will be replaced with hexadecimal escape (\xXX).
public static Map parseNameValuePairList(String s, String defaultValue) throws ParseException
defaultValue
is not null. When a
value is omitted, then the colon after the key must be omitted as well.
The same key can't be used for multiple times.s
- the string to parse.
For example: "strong:100, soft:900"
.defaultValue
- the value used when the value is omitted in a
key-value pair.ParseException
- if the string is not a valid name-value
pair list.public static boolean isXMLID(String name)
public static boolean matchesName(String qname, String nodeName, String nsURI, Environment env)
public static String leftPad(String s, int minLength)
s
- the string that will be padded.minLength
- the length to reach.public static String leftPad(String s, int minLength, char filling)
s
- the string that will be padded.minLength
- the length to reach.filling
- the filling pattern.public static String leftPad(String s, int minLength, String filling)
leftPad('ABC', 9, '1234')
returns "123412ABC"
.s
- the string that will be padded.minLength
- the length to reach.filling
- the filling pattern. Must be at least 1 characters long.
Can't be null
.public static String rightPad(String s, int minLength)
s
- the string that will be padded.minLength
- the length to reach.public static String rightPad(String s, int minLength, char filling)
s
- the string that will be padded.minLength
- the length to reach.filling
- the filling pattern.public static String rightPad(String s, int minLength, String filling)
rightPad('ABC', 9, '1234')
returns "ABC412341"
. Note that the filling pattern is
started as if you overlay "123412341"
with the left-aligned
"ABC"
, so it starts with "4"
.s
- the string that will be padded.minLength
- the length to reach.filling
- the filling pattern. Must be at least 1 characters long.
Can't be null
.