collect '-' at the start until '[' or '(' is reached, then drop the same from the end if present otherwise return the value as is
collect '-' at the start until '[' or '(' is reached, then drop the same from the end if present otherwise return the value as is