import re


def parse_range_header(range):
    """
    Parse a range header as used by the dojo Json Rest store.

    :param str range: The content of the range header to be parsed. 
        eg. `items=0-9`
    :returns: A dict with keys start, finish and number or `False` if the
        range is invalid.
    """
    match = re.match('^items=([0-9]+)-([0-9]+)$', range)

    if match:
        start = int(match.group(1))
        finish = int(match.group(2))

        if finish < start:
            finish = start
        return {
            'start': start,
            'finish': finish,
            'count': finish - start + 1
        }
    else:
        return False