def parse_cron_expression()

in adjust_schedule_function/lib/recurrence.py [0:0]


def parse_cron_expression(expression):
    pattern = r'^([^\s]+)\s+([^\s]+)((?:\s+[^\s]+){3,4})$'
    match = re.match(pattern, expression)

    if not match:
        raise Exception("String '{}' is not a valid cron expression".format(expression))

    return {
        'minute': match.group(1),
        'hour': match.group(2),
        'rest': match.group(3).strip()
    }