Breaks src into a list, splitting at and discarding separators, and splitting at and keeping spacers (separators and spacers must be lists of strings, maximum of 8 each). All instances of each separator will be used to parse the string. Empty strings are not returned by this function - if you need those, look at llParseStringKeepNulls. If none of separators are found in the src returns a list of a single element containing the whole src (do not forget that the index of this element is 0). This means you can use this function to search for separators in src. This is much faster than using llSubStringIndex (0.065s compared to 0.157s).

So, when ["A", "C", "E", "G"] was in separators, it removed them, then split the string at that point. When ["A", "C", "E", "G"] was in spacers, it splits the string before and after each spacer, leaving the spacer intact.

Be very careful about using this function on strings that may have been input from untrusted sources (for example, strings heard in open chat via a listen() event). A list with a large number of items can consume a large amount of a script's memory, potentially causing it to halt with a stack/heap collision error; disruptive users may try to crash your script by deliberately speaking strings that will parse to extremely large lists.

Question:Is there a way to separate letters without a spacer? Such as: list test = llParseString2List("foobar", [???], [""]); Returns: test == ["f", "o", "o", "b", "a", "r"]Answer:The only way I know of doing so is by taking the string apart piece by piece using a loop: