This class provides advanced methods on Strings. It is ideally used with 'using StringTools' and then acts as an extension to the String class.
If the first argument to any of the methods is null, the result is unspecified.
Tells if the string s
ends with the string end
.
If end
is null, the result is unspecified.
If end
is the empty String "", the result is true.
Returns the character code at position index
of String s
.
This method is faster than String.charCodeAt() on most platforms.
However, unlike String.charCodeAt(), the result is unspecified if
index
is negative or exceeds s
.length.
This operation is not guaranteed to work if s
contains the \0
character.
Encodes n
into a hexadecimal representation.
If digits
is specified, the resulting String is padded with "0" until
its length equals digits
.
Escapes HTML special characters of the string s
.
The following replacements are made:
- & becomes &
- < becomes <
- > becomes >
If quotes
is true, the following characters are also replaced:
- " becomes "
- ' becomes '
Unescapes HTML special characters of the string s
.
This is the inverse operation to htmlEscape, i.e. the following always holds: htmlUnescape(htmlEscape(s)) == s
The replacements follow: - & becomes & - < becomes < - > becomes > - " becomes " - ' becomes '
Tells if the character in the string s
at position pos
is a space.
A character is considered to be a space character if its character code is 9,10,11,12,13 or 32.
If s
is the empty String "", or if pos is not a valid position within
s
, the result is false.
Concatenates c
to s
until s
.length is at least l
.
If c
is the empty String "" or if l
does not exceed s
.length,
s
is returned unchanged.
If c
.length is 1, the resulting String length is exactly l
.
Otherwise the length may exceed l
.
If c
is null, the result is unspecified.
Removes leading space characters of s
.
This function internally calls isSpace() to decide which characters to remove.
If s
is the empty String "" or consists only of space characters, the
result is the empty String "".
Replace all occurences of the String sub
in the String s
by the
String by
.
If sub
is the empty String "", by
is inserted after each character
of s
. If by
is also the empty String "", s
remains unchanged.
This is a convenience function for s
.split(sub
).join(by
).
If sub
or by
are null, the result is unspecified.
Appends c
to s
until s
.length is at least l
.
If c
is the empty String "" or if l
does not exceed s
.length,
s
is returned unchanged.
If c
.length is 1, the resulting String length is exactly l
.
Otherwise the length may exceed l
.
If c
is null, the result is unspecified.
Removes trailing space characters of s
.
This function internally calls isSpace() to decide which characters to remove.
If s
is the empty String "" or consists only of space characters, the
result is the empty String "".
Tells if the string s
starts with the string start
.
If start
is null, the result is unspecified.
If start
is the empty String "", the result is true.
Removes leading and trailing space characters of s
.
This is a convenience function for ltrim(rtrim(s)).