.. Generated automatically by doc/tools/makerst.py in Godot's source tree. .. DO NOT EDIT THIS FILE, but the doc/base/classes.xml source instead. .. _class_String: String ====== **Category:** Built-In Types Brief Description ----------------- Built-in string class. Member Functions ---------------- +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`basename` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`begins_with` **(** :ref:`String` text **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`c_escape` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`c_unescape` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`capitalize` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`casecmp_to` **(** :ref:`String` to **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`empty` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`extension` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`find` **(** :ref:`String` what, :ref:`int` from=0 **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`find_last` **(** :ref:`String` what **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`findn` **(** :ref:`String` what, :ref:`int` from=0 **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_base_dir` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_file` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`hash` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`hex_to_int` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`insert` **(** :ref:`int` pos, :ref:`String` what **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_abs_path` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_rel_path` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_valid_float` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_valid_html_color` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_valid_identifier` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_valid_integer` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_valid_ip_address` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`json_escape` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`left` **(** :ref:`int` pos **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`length` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`match` **(** :ref:`String` expr **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`matchn` **(** :ref:`String` expr **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RawArray` | :ref:`md5_buffer` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`md5_text` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`nocasecmp_to` **(** :ref:`String` to **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`ord_at` **(** :ref:`int` at **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`pad_decimals` **(** :ref:`int` digits **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`pad_zeros` **(** :ref:`int` digits **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`percent_decode` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`percent_encode` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`plus_file` **(** :ref:`String` file **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`replace` **(** :ref:`String` what, :ref:`String` forwhat **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`replacen` **(** :ref:`String` what, :ref:`String` forwhat **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`rfind` **(** :ref:`String` what, :ref:`int` from=-1 **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`rfindn` **(** :ref:`String` what, :ref:`int` from=-1 **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`right` **(** :ref:`int` pos **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`StringArray` | :ref:`split` **(** :ref:`String` divisor, :ref:`bool` allow_empty=True **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RealArray` | :ref:`split_floats` **(** :ref:`String` divisor, :ref:`bool` allow_empty=True **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`strip_edges` **(** :ref:`bool` left=True, :ref:`bool` right=True **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`substr` **(** :ref:`int` from, :ref:`int` len **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RawArray` | :ref:`to_ascii` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`to_float` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`to_int` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`to_lower` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`to_upper` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RawArray` | :ref:`to_utf8` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`xml_escape` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`xml_unescape` **(** **)** | +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+ Description ----------- This is the built-in string class (and the one used by GDScript). It supports Unicode and provides all necessary means for string handling. Strings are reference counted and use a copy-on-write approach, so passing them around is cheap in resources. Member Function Description --------------------------- .. _class_String_basename: - :ref:`String` **basename** **(** **)** If the string is a path to a file, return the path to the file without the extension. .. _class_String_begins_with: - :ref:`bool` **begins_with** **(** :ref:`String` text **)** Return true if the strings begins with the given string. .. _class_String_c_escape: - :ref:`String` **c_escape** **(** **)** .. _class_String_c_unescape: - :ref:`String` **c_unescape** **(** **)** .. _class_String_capitalize: - :ref:`String` **capitalize** **(** **)** Return the string in uppercase. .. _class_String_casecmp_to: - :ref:`int` **casecmp_to** **(** :ref:`String` to **)** Perform a case-sensitive comparison to another string, return -1 if less, 0 if equal and +1 if greater. .. _class_String_empty: - :ref:`bool` **empty** **(** **)** Return true if the string is empty. .. _class_String_extension: - :ref:`String` **extension** **(** **)** If the string is a path to a file, return the extension. .. _class_String_find: - :ref:`int` **find** **(** :ref:`String` what, :ref:`int` from=0 **)** Find the first occurrence of a substring, return the starting position of the substring or -1 if not found. Optionally, the initial search index can be passed. .. _class_String_find_last: - :ref:`int` **find_last** **(** :ref:`String` what **)** Find the last occurrence of a substring, return the starting position of the substring or -1 if not found. Optionally, the initial search index can be passed. .. _class_String_findn: - :ref:`int` **findn** **(** :ref:`String` what, :ref:`int` from=0 **)** Find the first occurrence of a substring but search as case-insensitive, return the starting position of the substring or -1 if not found. Optionally, the initial search index can be passed. .. _class_String_get_base_dir: - :ref:`String` **get_base_dir** **(** **)** If the string is a path to a file, return the base directory. .. _class_String_get_file: - :ref:`String` **get_file** **(** **)** If the string is a path to a file, return the file and ignore the base directory. .. _class_String_hash: - :ref:`int` **hash** **(** **)** Hash the string and return a 32 bits integer. .. _class_String_hex_to_int: - :ref:`int` **hex_to_int** **(** **)** Convert a string containing an hexadecimal number into an int. .. _class_String_insert: - :ref:`String` **insert** **(** :ref:`int` pos, :ref:`String` what **)** Insert a substring at a given position. .. _class_String_is_abs_path: - :ref:`bool` **is_abs_path** **(** **)** If the string is a path to a file or directory, return true if the path is absolute. .. _class_String_is_rel_path: - :ref:`bool` **is_rel_path** **(** **)** If the string is a path to a file or directory, return true if the path is relative. .. _class_String_is_valid_float: - :ref:`bool` **is_valid_float** **(** **)** Check whether the string contains a valid float. .. _class_String_is_valid_html_color: - :ref:`bool` **is_valid_html_color** **(** **)** Check whether the string contains a valid color in HTML notation. .. _class_String_is_valid_identifier: - :ref:`bool` **is_valid_identifier** **(** **)** .. _class_String_is_valid_integer: - :ref:`bool` **is_valid_integer** **(** **)** Check whether the string contains a valid integer. .. _class_String_is_valid_ip_address: - :ref:`bool` **is_valid_ip_address** **(** **)** Check whether the string contains a valid IP address. .. _class_String_json_escape: - :ref:`String` **json_escape** **(** **)** .. _class_String_left: - :ref:`String` **left** **(** :ref:`int` pos **)** Return an amount of characters from the left of the string. .. _class_String_length: - :ref:`int` **length** **(** **)** Return the length of the string in characters. .. _class_String_match: - :ref:`bool` **match** **(** :ref:`String` expr **)** Do a simple expression match, where '\*' matches zero or more arbitrary characters and '?' matches any single character except '.'. .. _class_String_matchn: - :ref:`bool` **matchn** **(** :ref:`String` expr **)** Do a simple case insensitive expression match, using ? and \* wildcards (see :ref:`match`). .. _class_String_md5_buffer: - :ref:`RawArray` **md5_buffer** **(** **)** .. _class_String_md5_text: - :ref:`String` **md5_text** **(** **)** .. _class_String_nocasecmp_to: - :ref:`int` **nocasecmp_to** **(** :ref:`String` to **)** Perform a case-insensitive comparison to another string, return -1 if less, 0 if equal and +1 if greater. .. _class_String_ord_at: - :ref:`String` **ord_at** **(** :ref:`int` at **)** Return the character code at position "at". .. _class_String_pad_decimals: - :ref:`String` **pad_decimals** **(** :ref:`int` digits **)** .. _class_String_pad_zeros: - :ref:`String` **pad_zeros** **(** :ref:`int` digits **)** .. _class_String_percent_decode: - :ref:`String` **percent_decode** **(** **)** .. _class_String_percent_encode: - :ref:`String` **percent_encode** **(** **)** .. _class_String_plus_file: - :ref:`String` **plus_file** **(** :ref:`String` file **)** .. _class_String_replace: - :ref:`String` **replace** **(** :ref:`String` what, :ref:`String` forwhat **)** Replace occurrences of a substring for different ones inside the string. .. _class_String_replacen: - :ref:`String` **replacen** **(** :ref:`String` what, :ref:`String` forwhat **)** Replace occurrences of a substring for different ones inside the string, but search case-insensitive. .. _class_String_rfind: - :ref:`int` **rfind** **(** :ref:`String` what, :ref:`int` from=-1 **)** Perform a search for a substring, but start from the end of the string instead of the beginning. .. _class_String_rfindn: - :ref:`int` **rfindn** **(** :ref:`String` what, :ref:`int` from=-1 **)** Perform a search for a substring, but start from the end of the string instead of the beginning. Also search case-insensitive. .. _class_String_right: - :ref:`String` **right** **(** :ref:`int` pos **)** Return the right side of the string from a given position. .. _class_String_split: - :ref:`StringArray` **split** **(** :ref:`String` divisor, :ref:`bool` allow_empty=True **)** Split the string by a divisor string, return an array of the substrings. Example "One,Two,Three" will return \:ref:`"One","Two","Three"\` if split by ",". .. _class_String_split_floats: - :ref:`RealArray` **split_floats** **(** :ref:`String` divisor, :ref:`bool` allow_empty=True **)** Split the string in floats by using a divisor string, return an array of the substrings. Example "1,2.5,3" will return \:ref:`1,2.5,3\` if split by ",". .. _class_String_strip_edges: - :ref:`String` **strip_edges** **(** :ref:`bool` left=True, :ref:`bool` right=True **)** Return a copy of the string stripped of any non-printable character at the beginning and the end. The optional arguments are used to toggle stripping on the left and right edges respectively. .. _class_String_substr: - :ref:`String` **substr** **(** :ref:`int` from, :ref:`int` len **)** Return part of the string from "from", with length "len". .. _class_String_to_ascii: - :ref:`RawArray` **to_ascii** **(** **)** Convert the String (which is a character array) to RawArray (which is an array of bytes). The conversion is speeded up in comparison to to_utf8() with the assumption that all the characters the String contains are only ASCII characters. .. _class_String_to_float: - :ref:`float` **to_float** **(** **)** Convert a string, containing a decimal number, into a float. .. _class_String_to_int: - :ref:`int` **to_int** **(** **)** Convert a string, containing an integer number, into an int. .. _class_String_to_lower: - :ref:`String` **to_lower** **(** **)** Return the string converted to lowercase. .. _class_String_to_upper: - :ref:`String` **to_upper** **(** **)** Return the string converted to uppercase. .. _class_String_to_utf8: - :ref:`RawArray` **to_utf8** **(** **)** Convert the String (which is an array of characters) to RawArray (which is an array of bytes). The conversion is a bit slower than to_ascii(), but supports all UTF-8 characters. Therefore, you should prefer this function over to_ascii(). .. _class_String_xml_escape: - :ref:`String` **xml_escape** **(** **)** Perform XML escaping on the string. .. _class_String_xml_unescape: - :ref:`String` **xml_unescape** **(** **)** Perform XML un-escaping of the string.