That's becasue you told it to!
[-+]+
is Regex for "a '-' or '+' character, at least one, but as many as wanted.
Take out the repitition indicator and it should work:
^([-+](\d{1,10})(\.\d{2,2})?)+$
If you are going to work with Regular Expressions, then get a copy of
Expresso[
^] - it's free, and it examines and generates Regular expressions.
[edit]I HATE MARKDOWN! Even when it's turned off, and inside a code block, it manages to muck up strings... :mad: [/edit]