def split_words(name):
all_words = []<EOL>for word in re.split(_split_words_dashes_re, name):<EOL><INDENT>vals = _split_words_capitalization_re.findall(word)<EOL>if vals:<EOL><INDENT>all_words.extend(vals)<EOL><DEDENT>else:<EOL><INDENT>all_words.append(word)<EOL><DEDENT><DEDENT>return all_words<EOL>
Splits name based on capitalization, dashes, and underscores.
    Example: 'GetFile' -> ['Get', 'File']
    Example: 'get_file' -> ['get', 'file']