import re


def remove_numbers(text: str) -> str:
    """Remove numbers between brackets and parentheses with hyphens or not.

    Using regex, finds and substitute with a blank space numbers of the form
    -[12]- or -(12)- or [12] or (12)
    
    Parameters:
    text: str - string where to remove numbers from

    Returns:
    clean_text: str - string without the numbers and brackets
    """
    pattern = re.compile(r"((-?\[\d+\]-?)|(-?\(\d+\)-?))")
    clean_text = pattern.sub(r" ", text)
    return clean_text