def split_arg_string(string):
rv = []<EOL>for match in re.finditer(r"<STR_LIT>"<EOL>r'<STR_LIT>'<EOL>r'<STR_LIT>', string, re.S):<EOL><INDENT>arg = match.group().strip()<EOL>if arg[:<NUM_LIT:1>] == arg[-<NUM_LIT:1>:] and arg[:<NUM_LIT:1>] in '<STR_LIT>':<EOL><INDENT>arg = arg[<NUM_LIT:1>:-<NUM_LIT:1>].encode('<STR_LIT:ascii>', '<STR_LIT>').decode('<STR_LIT>')<EOL><DEDENT>try:<EOL><INDENT>arg = type(string)(arg)<EOL><DEDENT>except UnicodeError:<EOL><INDENT>pass<EOL><DEDENT>rv.append(arg)<EOL><DEDENT>return rv<EOL>
Given an argument string this attempts to split it into small parts.