# Strings library This library adds extra string manipulation functions to ground. It is entirely coded in ground. Please note that you cannot copy a single function from the package, as some functions rely on other functions in the library (reliance on other functions is detailed below). ## Functions ### fun -char !findChar -string &str -char &char Finds the index of $char in $string (no prerequisites). ### fun -char !findCharInstance -string &str -char &char -int &instance Finds the index of the `$instance`th instance of $char in $str (no prerequisites). ### fun -string !mid -string &str -int &idx -int &len Finds $len characters of $str, starting at $idx (no prerequisites). ### fun -string !inBrackets -string &str -char &left -char &right -int &instance Finds the content of the `$instance`th instance of brackets, with the left bracket being the $left char and the right bracket of $right char (requires !findCharInstance and !mid). ### fun -bool !matchStart -string &str -string &instr Checks if the start of $str matches $instr (requires !mid). ### fun -int !findStringInstance -string &str -string &instr -int &instance The same as !findCharInstance, but allows a string to be parsed to be searched for (no prerequisites). ### fun -string !removeLeft -string &string -int &num Removes the first $num characters from a string (no prerequisites). ### fun -string !removeRight -string &string -int &num You'll never guess what this does (it removes the last $num characters from a string) (no prerequisites). ### fun -bool !contains -string &str -string &instr Checks if $str contains $instr (requires !mid). ### fun -list !split -string &str -string &splitstr Returns a list of $str split apart depending on $splitstr, e.g. `split("a->b->c", "->")` returns `[a, b, c]` (requires !contains, !findStringInstance, !mid, !removeLeft).