+ matches the previous token between one and unlimited times, as many times as possible, giving back as needed (greedy)
0-9 matches a single character in the range between 0 (index 48) and 9 (index 57) (case insensitive)
a-z matches a single character in the range between a (index 97) and z (index 122) (case insensitive)
()+ matches a single character in the list ()+ (case insensitive)
matches the character -
literally (case insensitive)
This hyphen is treated literally, which might be confusing for others. Consider escaping it or placing at the start or end of the class!