• Splits the given string on 'and', but only if not nested inside <>, [], (), or quotes. This also handles escaped quotes.

    Parameters

    • str: string

      The string to split

    • splitOn: string = 'and'

      The string to split on (default: 'and')

    • closes: Record<string, string> = MatchingClose

      The matching of closing characters for nesting, structures with different open and close characters only can be nested of each other, while those with the same open and close character (like quotes) can not be nested inside themselves.

    Returns string[]