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.

Static variables

staticwinMetaCharacters:Array<Int> = [" ".code, "(".code, ")".code, "%".code, "!".code, "^".code, "\"".code, "<".code, ">".code, "&".code, "|".code, "\n".code, "\r".code, ",".code, ";".code]

Available on Neko, macOS, Linux, Windows

Character codes of the characters that will be escaped by quoteWinArg(_, true).

Static methods

staticendsWith (s:String, end:String):Bool

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.

statichex (n:Int, ?digits:Int):String

Encodes n into a hexadecimal representation.

If digits is specified, the resulting String is padded with "0" until its length equals digits.

statichtmlEscape (s:String, ?quotes:Bool):String

Available on Neko, macOS, Linux, HTML5, Windows

Escapes HTML special characters of the string s.

The following replacements are made:

  • & becomes &amp;
  • < becomes &lt;
  • > becomes &gt;

If quotes is true, the following characters are also replaced:

  • " becomes &quot;
  • ' becomes &#039;

staticisSpace (s:String, pos:Int):Bool

Available on Neko, macOS, Linux, HTML5, Windows

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.

staticlpad (s:String, c:String, l:Int):String

Available on Neko, Android, iOS, macOS, Linux, Windows

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.

staticltrim (s:String):String

Available on Neko, macOS, Linux, HTML5, Windows

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 "".

staticquoteUnixArg (argument:String):String

Available on Neko, macOS, Linux, Windows

Returns a String that can be used as a single command line argument on Unix. The input will be quoted, or escaped if necessary.

staticquoteWinArg (argument:String, escapeMetaCharacters:Bool):String

Available on Neko, macOS, Linux, Windows

Returns a String that can be used as a single command line argument on Windows. The input will be quoted, or escaped if necessary, such that the output will be parsed as a single argument using the rule specified in http://msdn.microsoft.com/en-us/library/ms880421

Examples:

quoteWinArg("abc") == "abc";
quoteWinArg("ab c") == '"ab c"';

staticreplace (s:String, sub:String, by:String):String

Replace all occurrences 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.

staticrtrim (s:String):String

Available on Neko, macOS, Linux, HTML5, Windows

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 "".

staticstartsWith (s:String, start:String):Bool

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.

statictrim (s:String):String

Available on Neko, macOS, Linux, HTML5, Windows

Removes leading and trailing space characters of s.

This is a convenience function for ltrim(rtrim(s)).

staticurlDecode (s:String):String

Available on Android, iOS, macOS, Linux, Windows

Decode an URL using the standard format.

staticurlEncode (s:String):String

Available on Android, iOS, macOS, Linux, Windows

Encode an URL by using the standard format.