def sheet_name_to_num(sheet):
    """
    Helper function to convert sheet name to it's numerical equivalent taking
    into account different type of sheets.
    e.g. returns 10 for ws_10, 10.1 for ws_10b, and 202 for ws_s02.
    Sheets are banded: 0 - 199 normal sheets, 200 - 399 s sheets, and 400+ for
    sr sheets.
    """
    stripped_sheet = sheet.strip("wsrbc_")
    try:
        num = int(stripped_sheet, 10)
    except ValueError:
       num = 0

    if sheet.endswith("b"):
        num += 0.1
    if sheet.endswith("c"):
        num += 0.2
    if sheet.startswith("ws_sr"):
        return 400 + num
    
    if sheet.startswith("ws_s"):
        return 200 + num
    
    return num