import re


def ruder_tokenizer(xs, pattern="([\s'\-\.\,\!])", preserve_case=False):
    """Splits sentences into tokens by regex over punctuation: ( -.,!])["""
    tok = [x for x in re.split(pattern, xs)
           if not re.match("\s", x) and x != ""]
    if preserve_case:
        pass
    else:
        # THE COMMENTED OUT LINE BELOW IS NOT PYTHON 2 COMPATIBLE
        # tok = list(map(str.lower, tok))
        tok = [x.lower() for x in tok]
    return tok